Py.Test获得剩余的测试用例数

时间:2015-06-22 15:33:06

标签: python pytest

有没有办法通过Py.Test获取尚未执行的测试用例(在带有函数作用域的py.test设置夹具中或在pytest_exception_interact中)。

当测试用例失败时,我在conftest中设置一个全局标志以指示测试失败并将应用程序重置为pytest_exception_interact中的默认状态,并在下一个函数的函数设置中,我验证此标志以运行执行测试前的一组前置条件。 现在,我不希望在最后一个测试用例失败时运行我正在执行的操作。

2 个答案:

答案 0 :(得分:2)

我能够在带有参数node(node.parent._collected)的模块中获取总测试的信息,但是我找不到检查测试是否已经执行的方法。现在,我正在做的就是检查此列表中当前测试的索引,看看还有多少仍在队列中执行。

def pytest_exception_interact(node, call, report):
    pass

如果有人,有更好的解决方案,请告诉我。

答案 1 :(得分:0)

“ pytest_exception_interact”仅在引发异常时调用。

您可以使用use:

def pytest_collection_finish(session):
    total_tests_number = len(session.items)