我开始工作一个爱好项目 蟒蛇 代码,我想到设置某种形式的持续的一体化(即运行电池测试情况,每次一个检查是在提出和发送格的电子邮件负责的人时的测试失败)相似 CruiseControlTeamCity.

我意识到我可以这样做有挂钩,在大多数 Vcs, 但这需要,测试运行在相同的计算机版本控制服务器,这是不优雅的,因为我会喜欢的。没有任何人有任何建议,对于小的、用户友好、开放源连续一体化体系适用于一个 蟒蛇 代码?

有帮助吗?

解决方案

我们运行 Buildbot-核心预算资源调拨目标(Trac) 在工作。我没有用过它太多了因为我的代码不是部分释放的循环。但是我们运行测试,对不同的环境(OS x/Linux/Win)和发送电子邮件—它是写在蟒蛇。

其他提示

一种可能性是哈德森。这是Java编写的,但没有一体化与Python项目:

哈德逊拥抱蟒蛇

我从来没有尝试过自己,但是。

(更新,Sept.2011年:后一个商标争议的哈德逊已更名为 詹金斯.)

第二Buildbot-核心预算资源调拨目标(Trac)的整合。你可以找到更多的信息,有关一体化 Buildbot网站.在我以前的工作,我们写和使用的插件,他们提(tracbb).什么插件不是改写的所有Buildbot网址,所以你可以用Buildbot从核心预算资源调拨目标(Trac).(http://example.com/tracbb).

真的很不错的事情有关Buildbot是,配置是写在蟒蛇。你可以将自己的代码直接的配置。它也很容易编写自己的BuildSteps执行具体任务。

我们用BuildSteps获得的源自SVN,拉的依赖关系,发布测试结果WebDAV,等等。

我写了一X10接口,以便我们能发送信号与建设的结果。当建立失败了,我们换上一个红色的熔岩灯。当建立成功,一个绿色的熔岩灯打开。好的时候:-)

我们使用这两个Buildbot和哈德逊对Script发展。两者都是有用的,但有不同的优势和弱点。

Buildbot的结构纯粹是蟒蛇和相当简单一旦你掌握的很(看epydoc产生的API文档的最新信息).Buildbot使它更容易界定非测试的任务,并分发测试。然而,它确实没有概念的各个测试,只是文字、HTML、和摘要输出,因此如果你想要有多层次浏览的测试输出等等你就必须建立它自己,或只是使用哈德森。

哈德森有很棒的支持下钻从整体结果为测试套和个人的测试;它也是伟大的比较试验的输出之间的建立,但是分布(主/从属)的东西是相对更复杂的,因为你需要一个Java环境对奴隶也;此外,哈德森是不能容忍的片状网络之间的联系的主人和奴隶。

因此,要获得利益的工具,我们运行一个单一的实例,哈德森,这抓住了共同的测试失败,那么我们所做的多平台的回归Buildbot.

这里是我们的实例:

我们使用 咬伤 这是综合与核心预算资源调拨目标(trac).它是蟒蛇的基础。

TeamCity有一些蟒蛇 集成.

但TeamCity是:

  • 不是开放源码
  • 是不小的,而丰富的功能
  • 是免费的小型中小组。

我有很好的经验 特拉维斯-CI 对于较小的代码基地。主要优点是:

  • 安装工作是在不到半屏幕上的配置文件
  • 你可以做你自己的安装,或只是使用免费的托管的版本
  • 半自动安装用于储存库。
  • 没有考虑到需要在网站;登录通过。

一些限制:

  • 蟒蛇不支持作为第一流的语言(样的时间写作;但你可以使用画中画和易于得到安装蟒蛇的依赖关系;看看 这个教程)

  • 代码已被托管审查(至少当使用的正式版本)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top