为什么我不应该在单元测试之前编写集成测试?

Why I should not write Integration Tests before unit tests?

从 J. B. Rainsberger 对 Integration Tests 的解释进行扩展 - 我在单元测试中模拟了远程组件的行为,当我到达组件的边界时;我为远程组件的模拟行为添加了集成测试。这是我发现远程组件微妙的新行为的时候,它强制我进行代码更改,我认为如果我在开始实现行为规范之前编写集成测试就可以避免这种情况。如果您已经在持续集成中尝试过或已经对此有一些想法,请通过分享您的经验来帮助我。谢谢。

如您所见,当多个 developers/teams 并行处理项目的多个组件时,合并到 CI 管道中的集成测试可以通过建立组件更改的标准来帮助稳定开发环境可以接受,哪些不可以。

另一方面,当跨组件更改 necessary/desired 时,它们可以被视为需要克服的障碍。这不一定是坏事,它实际上可以鼓励相关人员 developers/teams 合作并共同确保整个项目朝着正确的方向发展。

因此可能需要采取一些平衡措施,具体取决于项目和开发活动的特殊性。