【问题标题】:How to control output from Twisted-trial tests?如何控制 Twisted-trial 测试的输出?
【发布时间】:2014-06-23 08:38:35
【问题描述】:

如何控制 Twisted-trial 测试的输出?

我已经查找了不同的解决方案,但我对测试还很陌生,所以我找不到合适的解决方案或无法正确使用它。

一般来说,我会尝试为我的项目制作自动测试系统,例如 BuildBot。但是 BuildBot 不适合我,因为它只对 Mercurial 的“更改源”钩子做出反应,我也想使用其他钩子。

在 BuildBot 文档的 THIS 页面上,我找到了以下信息:

试用的一个优点是 Buildbot 恰好知道如何 解析试验输出,让它识别哪些测试通过以及哪些 那些失败了。然后,Buildbot 可以提供关于 有多少测试失败了,当个别测试失败时 以前一直通过,等等。

这是否意味着除了从测试输出中解析信息之外别无他法?

其他可能的解决方案?

另外,我查阅了 Twisted 文档,发现了这个类IReporter

这是一个解决方案吗?如果是,我该如何使用它? 如果不是,还有其他解决方案吗?

附:请注意,测试已经写好了,所以我只能启动它们,不能修改源代码。

【问题讨论】:

  • 嗯?你想要什么?
  • 从一些反复无常的钩子开始,我开始了一系列扭曲试验。我想以某种方式从这个测试中得到结果,分析它们并根据这个结果运行一些代码。

标签: unit-testing testing output twisted buildbot


【解决方案1】:

您可以通过编写报告插件来任意格式化试验的输出。您已经找到了该插件的接口 - IReporter

一旦您编写了这样的插件,您就可以通过将--reporter=yourplugin 添加到您的trial 命令行参数来使用它。

您可以使用trial --help-reporters 查看系统上已经可用的报告器插件列表。如果您安装了python-subunit,那么您将看到subunit,这是一种机器可解析的格式,可能已经满足您的要求。不幸的是,它仍然是一个 subunit v1 报告器,而 subunit v2 在很多方面都更好。不过,这可能就足够了。

【讨论】:

  • 非常感谢,这就是我正在寻找的解决方案。有趣的事情我已经遇到过 subunit,当我尝试在 Jenkins 中表示结果时,并没有太在意。
猜你喜欢
  • 2013-12-22
  • 2016-09-14
  • 2014-10-14
  • 1970-01-01
  • 2015-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多