如何抑制py.test一字符测试结果输出?

时间:2019-02-06 08:14:28

标签: python pytest

使用py.test运行测试时,通常会以一个字符的形式将测试结果打印在控制台上,即通过的测试为点“。”,失败的测试为“ F”,并且错误为脚本是“ E”。

我想抑制此输出;没有F,E等。我尝试在conftest.py中执行以下操作:

import pytest

@pytest.hookimpl(hookwrapper=False)
def pytest_report_teststatus(report):
    return report.outcome, "", report.outcome.upper()

事实上,它确实抑制了输出!

但是,不利的一面是,这神奇地增加了最后报告的数字。因此,我收到了3(!)个测试,而不是1个测试:

=============================================================================== 3 passed in 0.06 seconds ================================================================================

但这是完整的测试脚本:

class TestSuite(object):
    def test1(self):
        assert True

该如何解决?因此,输出仅报告1(一项)通过测试,而测试结果(.FE)是否被抑制?

0 个答案:

没有答案