2011-05-12 50 views
3

我们的每个团队成员都运行各种测试,并确保在推送到中央/源存储库之前,所有测试都通过。在这种情况下我们是否仍然需要CI服务器?我们有不同的开发和生产环境(mac vs linux)。还有CI服务器的一个简单理由,如果我们在Linux上设置CI服务器,那就是我们正在像环境一样在更多生产环境中运行测试。但是还有一些坚实的理由还有吗?如果我们在推动之前通过所有测试,我们是否真的需要持续集成?

感谢

+0

这取决于。当有人检查代码并打破构建时,你是否想尽快知道? – 2011-05-12 05:46:35

回答

2

我觉得你在不断融合在你的问题的最大好处之一暗示。它使您有机会确保代码根据您的源代码管理系统信息库中的内容检查并按预期运行。如果你在一个团队中工作,一个人在他们的本地环境中进行一些改变并不罕见,这些改变可能依赖于另一个资源(也许是一个dll),他们忘记检查到源代码控制库,你的ci服务器显然会失败,但应用程序将编译和测试将在该开发人员机器上运行。

+0

+1。我经常听到这叫做“哥们打造”。自动伙伴构建非常重要。我已经看到了每一个团队所犯的错误,而这些错误可能已经(或已经)被解决了。 – 2011-05-12 06:09:56

+0

谢谢。在这种情况下,CI服务器肯定会是一个福音。 – bikashp 2011-05-12 06:18:40

0

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

  • 部署到共享环境
  • 运行自动化测试
  • 给予定期自动测试状态报告(例如每天)
  • 存档建立

退房维基百科上的CI的文章:

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

相关问题