使用 Tox 和 Teamcity 测试 python 个项目

Testing python project with Tox and Teamcity

我有一个配置矩阵非常简单的项目,在 tox 中有描述:py{27,35}-django{18,19}

我使用 TeamCity 作为 CI-服务器,运行 测试 py.test 安装 teamcity-messages。我已经尝试 运行 每个配置,例如 tox -e py27-django18 在不同的步骤。但是 Teamcity 没有总结测试 也没有累积文件的覆盖率,它只计算最后一个 运行 的覆盖率并且 Tests passed:​ ... 只显示一个构建的测试。

如何将具有多个 Python 配置的测试集成到 Teamcity 中?

更新。发现,覆盖率计算正确,只是忘记将 --cov-append 选项添加到 py.test

TeamCity 根据名称对测试进行计数。我的猜测是因为您在 tox 矩阵中的测试具有相同的名称,所以它们被算作一个测试。这应该在您构建的测试页面上可见,您可以在其中查看每个测试的调用计数。

为了使 TeamCity 正确报告测试数量,测试名称在不同的配置中必须不同。也许,您可以在报告的测试名称中包含配置详细信息