如何使用Unitest的Stdout生成XML测试报告



假设我有一个用于构建和运行unittest的Python工具,例如python3 build_and_test ...

有什么方法可以解析unittest的Stdout并生成XML(JUNIT(报告?我已经参考了unittest-xml-reporting,但是看来我必须更改我的build_and_test代码,而我不能这样做。我该如何仅解析unittest的Stdout并创建XML报告?

您需要进行2个步骤:

  1. 扩展UnitTest.TextTestrunner和Override _makeresult((。请参阅https://docs.python.org/3.4/library/unittest.html#unittest.textttesterunner._makeresult

  2. 实现您自己的UnitTest.testResult版本。请参阅https://docs.python.org/3.4/library/unittest.html#unittest.testresult。您的代码将在各种事件中为代码。示例:当存在测试误差时,将调用甲基化剂。请参阅https://docs.python.org/3.4/library/unittest.html#unittest.testresult.adderror

现在您可以控制各种事件,并且可以创建XML报告。

最新更新