在我们进入CI时进行内部辩论。
一方认为只有单元测试应该包含在CI服务器上,而另一方则认为单元测试和集成测试都应该在服务器上运行。
为了清楚起见:我认为单元测试是没有外部/第三方系统依赖性的测试(即数据库,文件系统,Web服务等)和集成测试。
感谢您的指导。如果你能提供参与你方的参考,那将不胜感激。
谢谢, NB
答案 0 :(得分:1)
一般的想法肯定是不应该包括集成测试。
但是,这是一般规则,在您的情况下可能不是这样。如果您的集成测试足够稳定,经常运行它们的好处会影响必须维护它们的缺点,那么您应该包含它们。
我认为集成测试是依赖于构建输出中未包含的任何内容的测试,这听起来与您的定义基本相同。
它也不是黑白问题。有不同程度的稳定性。例如,按降序排列:
有些人可能会建议,正确使用依赖注入和模拟框架,永远不需要集成测试。我会留下让你的团队进行辩论。
包括测试也会产生不同程度的后果。例如,在测试失败时失败,或者只是发送通知和/或需要某种批准点。
这是一种可能的方法: