我们正在使用CruiseControl运行CI循环 - 并且有超过一千个FitNesse / FitLibrary测试。至少可以说,这需要一段时间。一些测试必须按顺序运行,但有些可以并行运行(大多数)。有没有人有使用CruiseControl配置复杂的FitNess CI环境的良好经验?怎么样? 或者 - 让我重新说一下 - 哪个测试自动化控制服务器在这方面更好(使用FitNesse)? 谢谢!
答案 0 :(得分:2)
并行运行FitNesse服务器的技巧主要是为每个运行保持所有端口分开。因此,每个FitNesse服务器都需要使用不同的-p参数启动。至于FitLibrary部分,如果您确实旋转了FitLibrary灯具通过端口与之交谈的内容,请确保它们使用不同的部分。如果你我们正在使用SliM,那么你将需要另外一个端口(SLIM_PORT)来为每个并行线程制作不同的敌人。
您可能需要注意的另一件事是从同一源目录启动所有测试。 FitNesse本身应该没有问题,但是如果你的灯具需要使用任何物理文件,那么这些有时会造成麻烦。如果一个作业正在测试另一个作业在Git / CVS中启动svn更新或类似操作时,您还可以在更新文件夹时遇到冲突。
我所知道的唯一其他问题是,您正在测试的任何其他库或系统是否可能在同时运行多个实例时遇到问题。
我们一直在Hudson / Jenkins下运行多个执行线程。每个作业都在一个单独的执行线程中运行通常使用单独的测试系统来确保与数据库交互的测试不会发生冲突。
如果CruiseControl可以并行运行多个版本,它也可以运行多个测试。