运行 集成测试的最佳实践是什么?

What are best practises to run integration tests?

我们有超过 150 个 postman 测试。它们是 ** 集成测试** 并且它们 运行 针对实际数据库和服务结构实例。他们失败了,因为他们没有与不时合并到集成的开发对齐。

他们很高兴发现一些错误。它是对产品的每个新版本进行的一组测试 运行,以在将版本发布到测试团队手中之前验证该版本是否可测试。我们正在使用 Newman 从控制台 运行 他们。同时我们想改进我们的持续部署管道。

问题

1.Where 我们应该 hold/run 他们吗?是否有 运行 邮递员 API 测试的云工具?

  1. 我们应该如何use/approach他们呢? (每次提交后?每天?)

  2. 我们可以将 postman API 测试称为集成测试或冒烟测试吗?

我对冒烟测试的理解是它们的规模应该相对较小(乍一看 150 个测试似乎太多了)并且实际上 "never"(或不太经常)失败。您只想为您的应用程序包含关键任务端点,并且测试应该执行得非常快。

冒烟测试的范围是通过测试简单故障将发布/构建或安装标记为不可接受/失败,例如(但不一定限于)状态代码 200(或其他)并且是 JSON 格式的响应。

我不会依赖冒烟测试来查找特定 REST 端点中的实际错误,而是要获得总体概览,即 运行ning。

1.Where should we hold/run them ? Is there a cloud tool to run postman API tests ?

使用版本控制来保存它们并使用 Jenkins 或其他 CI 工具以便 运行 它们。

此外,您可能希望 运行 在临时服务器或生产服务器上部署后进行冒烟测试。

Postman 也提供一些付费工具。

How should we use/approach to them ? ( After every commit? Daily ? )

它们应该是您管道的一部分。快速失败! 运行 在每次提交或构建后,如果可能且可靠的话。如果这是不可能的,因为白天不可靠的外部依赖 - 例如 - 运行 他们在晚上。

Can we call postman API tests as smoke tests ?

你可以随便叫他们!

问题更像是:"what are you exactly trying to achieve?"。如果你的一些测试做的有点太多或者经常失败,那可能是因为它们更像是集成测试。