我有一些细节,我必须打印出一个失败的测试。现在我只是将这些信息输出到STDOUT,我使用-s来查看这些信息。但是我希望在失败时将此信息附加到测试用例详细信息中,而不需要使用-s选项。
答案 0 :(得分:1)
使用pytest_runtest_logreport(report) hook:
def pytest_runtest_logreport(report):
report.longrepr = "Some message"
答案 1 :(得分:0)
您可以继续打印到stdout,而不是使用-s
。如果你这样做,py.test会在测试失败时将你打印的细节放在断言失败消息的“捕获的标准输出”部分。
当使用-s
时,事情变得更糟,因为即使测试通过它们也会打印到stdout,它也会在测试运行期间显示,而不是在故障报告的一部分中显示。