如何更改pytest中的错误和故障检测?

时间:2016-05-14 17:01:10

标签: python unit-testing testing hook pytest

在pytest中,我想将所有未被捕获的AssertionError例外报告为Failure,将所有其他未捕获的例外报告为Errors(而不是将设置方法中所有未捕获的异常报告为默认行为Errors而测试用例和UUT中的所有未捕获的异常都为Failure)。我认为可以用pytest钩子完成。然而,"传递","跳过","失败"似乎是TestReport对象中唯一有效的结果值。

所以,

  1. 是否可以添加"错误"作为一个有效的结果,让其余的pytest做适当的报告,即在控制台输出上显示 E / ERROR 而不是 F / FAILURE
  2. 如果是这样,那么来源的理想部分是什么?
  3. 如果我们无法添加"错误"作为一个有效的结果,那么注入这种行为的最佳方式是什么?

1 个答案:

答案 0 :(得分:0)

[自我回答]

pytest-finer-verdicts plugin实现了这种行为:)