CruiseControl(原始)和 CruiseControl.NET 之间的差异
原始 CruiseControl 和 .NET 端口之间有什么区别吗? 我比较了这两个,但除了开发语言之外找不到任何大的区别。我想使用其中之一来(自动)测试 Web 应用程序,使用 Selenium 和 Subversion,甚至可能是 Groovy,但是不知道该选择哪个。
[编辑] 在研究了 CC 和 Hudson 之后,我选择了 Hudson,因为它很简单,它已经具有运行 Groovy 脚本和 Selenium 的插件
Are there any differences between the original CruiseControl and the .NET port? I've compared the 2, but can't find any big differences except the language it has been developed in. I want to use either one of them for (automated) testing of web applications, using Selenium and Subversion, perhaps even Groovy but don't know which to choose.
[edit]
After looking at CC and Hudson, I've chosen Hudson for it's simplicity, it already has plugins to run Groovy scripts and Selenium as well
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
选择我,选择我! (我从事最初的 CruiseControl 工作。)
我从未使用过 CC.NET,但据我所知,我同意它们相当具有可比性。 最重要的区别可能是跨平台与仅 Windows。
现在我想知道要等多久才会有人过来说他们的废话,你应该尝试Hudson? ;)
(当然还有很多其他选择。 ..)
Choose me, choose me! (I work on the original CruiseControl.)
I've never used CC.NET but from what I know I agree that they are pretty comparable. Probably the most important difference is cross-platform vs. Windows only.
Now I wonder how long until someone comes by and says their both crap and you should try Hudson? ;)
(And of course there are lots of other choices...)
CruiseControl.NET(此后为 cc.net)具有构建队列 (http:// /confluence.public.thoughtworks.org/display/CCNET/Project+Configuration+Block),它允许您序列化取决于特定构建顺序的构建。 我正在 java 版本的 Cruisecontrol 中模拟此行为,但功能并未一对一映射。 然而,我从 .net 迁移到 java 版本的原因是 .net 版本使用 mono 进行核心转储(两个月前的 cc.net nightly build 和 mono nightly build)。 错误在于单声道线程处理,但没有尝试让 cc.net 启动并运行。
如果您没有注意到配置示例/文档所遵循的版本号,那么有关此的文档可能很难找到(confluence.public.thoughtworks.org 有更新的配置文档,而 ccnet.sourceforge.net 没有。我知道 ccnet 很可能是一个死站点,但如果您没有仔细阅读您访问的每个页面上的日期戳,这可能会困扰您)。
此外,cc.net 中的 cvs 和 svn 源代码控制块比 java 版本中的对应版本更精细、功能更丰富,但这在我的工作中并不是问题。 java 版本也很容易扩展/修改 re: 插件行为,但你真的只是希望看到这种工作向上游而不是分叉。
我对 java 版本和 .net 中的分支(模单运行时行为)印象深刻,但你真的不想尝试 Cruisecontrol 的任何其他分支。 我对哈德森有过一些外围经验,但这些功能并不足以让我放弃巡航控制。 Hudson 有一个 Hudson 和 CruiseControl (java) 的(有点彩色的)比较图,位于 http:// /hudson.gotdns.com/wiki/display/HUDSON/Home
一个可行的替代方案是 python 实现的 buildbot (http ://buildbot.net/trac)。 它没有花哨的 GUI 仪表板,并且设置在某种程度上更受命令行限制,但如果您正在进行分布式构建,则设置和运行非常容易。
CruiseControl.NET (cc.net henceforth) has build queues (http://confluence.public.thoughtworks.org/display/CCNET/Project+Configuration+Block), which allows you to serialize builds that depends on a certain build order. I'm in the process of emulating this behavior in the java version of cruisecontrol but the functionality doesn't map one to one. The reason however, that I'm at all moving from the .net to the java version is that the .net version core dumps with mono (cc.net nightly build and mono nightly build as of two months ago). The fault lies with monos thread handling but voids attempts to get cc.net up and running.
The documentation on this can be tricky to find, if you don't notice the version numbers that the configuration examples/documentation adhere to (confluence.public.thoughtworks.org has the updated configuration documentation whereas ccnet.sourceforge.net has not. I know that the ccnet is most likely a dead site, but if your're not carefully reading the datestamps on every page you're visiting, this may bite you).
Furthermore, the sourcecontrol blocks for cvs and svn in cc.net are more granular and featurerich than their counterpart in the java version, but this has not been a problem in my work. The java version is also easy to extend/modify re: plugin behavior, but you would really just like to see this kind of work going upstream instead of forking.
I'm fairly impressed with both the java version and the fork in .net (modulo mono runtime behavior), but you really do not want to try any of the other forks of cruisecontrol. I've had peripheral experience with hudson, and the features were just not compelling enough to veer me from cruisecontrol. Hudson has a (somewhat coloured) comparison map of Hudson and CruiseControl (java) at http://hudson.gotdns.com/wiki/display/HUDSON/Home
A viable alternative is the python implemented buildbot (http://buildbot.net/trac). It does not have fancy gui dashboards and the setup is somewhat more commandline-bound, but if you're doing distributed builds, it's very easy to set up and get running.
我认为对你来说这将取决于操作系统,原始版本可以在 nix 上运行,.net 版本可以在 windows 上运行。
还有其他自动构建实用程序也可以执行此操作,例如 Windows 空间中的 TeamCity 和 Ruby 世界中的 Cruisecontrol.rb。
还有一个基于 PowerShell 的构建实用程序,名为 pSake,可以轮询 subversion 并执行任务。
I think for you it will come down to operating system, original can run on nix, and .net version runs on windows.
There are other automated build utilities that can do this as well, such as TeamCity in the windows space, and cruisecontrol.rb in the ruby world.
Also there is a PowerShell based build utility called pSake that can poll subversion and perform tasks.