将信息附加到失败的测试

时间:2014-10-24 09:28:28

标签: python pytest

我有一些细节,我必须打印出一个失败的测试。现在我只是将这些信息输出到STDOUT,我使用-s来查看这些信息。但是我希望在失败时将此信息附加到测试用例详细信息中,而不需要使用-s选项。

2 个答案:

答案 0 :(得分:1)

使用pytest_runtest_logreport(report) hook:

def pytest_runtest_logreport(report):
     report.longrepr = "Some message"

答案 1 :(得分:0)

您可以继续打印到stdout,而不是使用-s。如果你这样做,py.test会在测试失败时将你打印的细节放在断言失败消息的“捕获的标准输出”部分。

当使用-s时,事情变得更糟,因为即使测试通过它们也会打印到stdout,它也会在测试运行期间显示,而不是在故障报告的一部分中显示。