测试远程REST服务API,特别是HubSpot

我打算编写一个内部处理某些联系人/客户数据的Spring Boot应用程序,并且我想集成HubSpot。例如,我有一个联系人ID,我想用它来请求HubSpot API(更新,删除,获取个人资料等)。

编写HubSpot集成测试的最佳方法是什么?

  1. 我该怎么办?

  2. 当我要求HubSpot获取个人资料或更新联系人时,我期望JSON响应。我应该如何测试呢?

  3. 我应该测试我是否得到了一些JSON,还是应该测试JSON的结构,也许是为了获得该联系人的更多信息以继续一些工作流程?

  4. 或者,我应该只为实际上需要HubSpot API的服务编写单元测试吗?

netdyk 回答:测试远程REST服务API,特别是HubSpot

这是一个有趣的问题。关于应该测试什么的许多问题都可以很好地快速得到答案,这基本上取决于您准备承担的风险。这是我写的blog post背景资料。

关于测试HubSpot集成的技术性。 HubSpot的documentation告诉您如何创建可用于测试集成的测试用户。

现在,您应该编写哪些测试?

首先,我认为Should I do it at all?的答案是肯定的。只需有两个活动部分,即代码和HubSpot即服务。任何一种都可能改变并破坏您的集成。如果没有适当的测试,它将很难在发生时进行调试。

现在介绍如何测试。三种类型的测试对您有帮助:

  1. 单元测试。这将测试您编写的代码。在这种情况下,我将模拟来自HubSpot的响应,以便您正在测试代码,但实际上并未调用HubSpot。

  2. 集成测试。考虑到标签,我假设您的问题的基础。为此,我将使用一个测试帐户并检查您期望的每种行为。

    • 创建用户
    • 更新用户等。

使用测试帐户,您可以以受控方式进行此操作。唯一可动的部分是您对HubSpot API的调用及其响应。在您修改代码时,或者在HubSpot发布新版本时,这将很容易突出问题。此级别将使您有信心集成正确。此时,我将验证HubSpot的响应,结构和价值。另外,我将检查是否已执行正确的操作(在创建或更新用户的情况下)。

  1. 端到端测试。使用HubSpot上的测试用户来完成整个Spring引导应用程序的流程。当然,这将使您确信整个应用程序的行为。但是,如果在这里由于与HubSpot集成而导致失败,则希望出现相应的集成测试失败,以帮助调试。
本文链接:https://www.f2er.com/3159742.html

大家都在问