mercurial:在每次提交时自动运行远程回归测试

时间:2012-01-30 17:19:01

标签: python testing mercurial dvcs regression-testing

每次我做出一些我认为可能工作的更改时我都会提交:我没有在提交之前进行大量测试。此外,我的提交很快将自动pushed to a remote repository。 (我是唯一的开发人员,我必须每天多次添加功能或重写部分代码。)

我想设置一台远程计算机,以便在我提交任何内容时自动运行回归测试;然后给我发回差异报告。

最简单的设置方法是什么?

我的所有代码都在Python 3中。我自己的系统是Windows 7,ActiveState Python,TortoiseHG和Wing IDE。我可以将远程计算机设置为Linux或Windows。该应用程序是所有命令行,带有文本输入和输出。

2 个答案:

答案 0 :(得分:6)

使用连续的集成服务器,例如BuildbotJenkins,并将其配置为监视存储库。然后使用它运行测试。 Buildbot是用Python编写的,所以你应该感觉宾至如归。

如果您认为使Buildbot或Jenkins轮询存储库是浪费的(即使hg pull在没有新的更改集时使用的资源非常少),那么您可以在存储库中配置changegroup挂钩触发CI服务器中的构建。

答案 1 :(得分:2)

我建议设置Buildbot。您可以让它观察远程存储库(支持Mercurial),并在存储库更改时自动启动构建。在您的情况下,构建只会运行您的测试套件。

它的瀑布显示允许您查看哪些构建失败以及何时与存储库的提交相关。它甚至可以通过违规提交通知您,当有什么事情发生时。

Jenkins是另一种选择,支持大多数相同的功能。甚至还有云托管选项,例如ShiningPanda可以为您托管它,并且它们为开源项目提供免费许可。