将Web应用程序转移到持续集成中的人们的任何成功故事/智慧之词?

时间:2009-12-12 02:52:47

标签: web-applications continuous-integration

我先发制人地将此标记为社区维基,因为它确实如此。

我有兴趣听取那些拥有真实生活成功案例的人们转向Web应用程序的持续集成。特别是,我对以下内容最感兴趣:

  • 您使用了哪些工具来汇总报告(例如Hudson)?
  • 您的应用程序包含哪些代码(例如,只有JavaScript API,服务器端代码+客户端代码的混合等)。
  • 您使用了哪些工具进行单元测试?
  • 您的质量检查用于执行功能,烟雾等测试的工具是什么?
  • 如果你必须克服任何事情,你必须克服哪些文化障碍才能迁移到CI?

至于我,我正处于成功整合的过程中,但这种整合需要付出代价(我实际上已经在深夜的某个时刻哭了)。原因是:我受到环境的人为限制,而且我还试图在我没有人做过的有限环境中做事。

但是从不担心,编程中没有哭(大部分时间),这是我自己对问题的回答:

  • Hudson是我的CI主工具。开发正在Mac,Windows和Linux上进行,但CI构建都在Linux上进行。
  • 我负责一个纯JavaScript API,加上一点点PHP。
  • 我正在使用YUI Test 3进行单元测试,推动在Linux机箱上无头环境中运行的Selenium Remote Control。
  • QA使用Selenium进行所有使用Java Selenese编写的测试。
  • 文化障碍:这很有意思。人们只是不明白测试JavaScript。例如,这是来自会议的回复,“不,我需要一个浏览器来运行我的单元测试。为什么我会在浏览器之外运行我的测试?”或者,“来吧,开发人员也需要运行这些单元测试。为什么我必须打包所有并以正式方式处理所有内容?”

1 个答案:

答案 0 :(得分:2)

我将我们的小型7人团队的产品搬到了哈德森。这里有一点背景:
我们的团队非常有才华,受到新开发人员的困扰,我不需要测试心态。我不能告诉你在最初几周内我们的构建在同一天重复打破了多少次。我们遵循敏捷开发方法,使用迭代/冲刺以一定的时间间隔生成可释放的代码。到目前为止,我确信你会看到我的痛苦。我安装了Hudson并且没有回头,因为我不仅不需要持续监控构建和单元测试的状态。

•您使用了哪些工具来汇总报告(例如Hudson)?         哈德森

•您的应用程序包含哪些代码(例如,只有JavaScript API,服务器端代码+客户端代码的混合等)
       Grails(Groovy,Jquery,Javascript)

•您使用了哪些工具进行单元测试?        为所有文件创建了Groovy Unit Tests,并为遇到的每个bug创建了一个        协助回归测试并为客户提供可操作的结果。

•您的质量保证用于执行功能,烟雾等测试的工具是什么?        因团队规模和个性而进行烟雾测试。

•如果你必须克服任何问题,你必须克服哪些文化障碍才能转向CI?        老实说,这是一个巨大的障碍。开发人员抱怨创建单元测试所需的时间,后来他们意识到通过Hudson不断测试所获得的时间。开发人员最初觉得我试图“指责”人们打破构建。

如果您想了解更多信息,请与我们联系。