如果我们在推送之前完成所有测试,我们真的需要持续集成吗?

时间:2011-05-12 05:45:35

标签: continuous-integration

我们的每个团队成员都会运行所有类型的测试,并确保在推送到中央/原始存储库之前通过所有测试。在这种情况下我们还需要CI服务器吗?我们有不同的开发和生产环境(mac vs linux)。如果我们在linux上设置CI服务器,那么仍然有CI服务器的一个简单原因是我们正在更环保的生产中运行测试。但还有一些坚实的理由仍然拥有它吗?

谢谢

2 个答案:

答案 0 :(得分:3)

我认为你暗示了在你的问题中持续整合的最大好处之一。它使您有机会确保代码将根据源代码控制存储库中的内容检出并按预期运行。如果你在一个团队中工作,一个人在他们的本地环境中进行更改并不常见,这可能依赖于另一个资源(可能是一个dll),他们忘记检查源控制存储库,你的ci服务器显然会失败,但应用程序将编译并且测试将在该开发人员机器上运行。

答案 1 :(得分:0)

安德鲁有一个很好的观点。为了扩展它,许多CI软件包不仅可用于构建。您可以使用它来自动化许多开发过程。

  • 部署到共享环境
  • 运行自动化测试
  • 定期提供自动化测试状态报告(例如每日)
  • 存档构建

查看维基百科上的CI文章:

http://en.wikipedia.org/wiki/Continuous_integration#Recommended_practices