Py.Test 获取剩余的测试用例数
Py.Test getting remaining test case count
有没有办法获取尚未使用 Py.Test 执行的测试用例(在具有函数作用域的 py.test 设置夹具中或在 pytest_exception_interact 中)。
当测试用例失败时,我在我的 conftest 中设置一个全局标志以指示测试失败并在 pytest_exception_interact 和下一个函数的函数设置中将应用程序重置为默认状态,我在执行测试之前将此标志验证为 运行 一组先决条件。
现在,我不想 运行 当最后一个测试用例失败时我正在执行的操作。
我能够使用参数节点 (node.parent._collected ) 获取模块中的总测试信息,但我找不到检查测试是否已执行的方法。现在,我所做的就是检查此列表中当前测试的索引,看看有多少仍在等待执行的队列中。
def pytest_exception_interact(node, call, report):
pass
如果谁有更好的解决办法请告诉我。
"pytest_exception_interact" 仅在引发异常时调用。
您可以使用:
def pytest_collection_finish(session):
total_tests_number = len(session.items)
有没有办法获取尚未使用 Py.Test 执行的测试用例(在具有函数作用域的 py.test 设置夹具中或在 pytest_exception_interact 中)。
当测试用例失败时,我在我的 conftest 中设置一个全局标志以指示测试失败并在 pytest_exception_interact 和下一个函数的函数设置中将应用程序重置为默认状态,我在执行测试之前将此标志验证为 运行 一组先决条件。 现在,我不想 运行 当最后一个测试用例失败时我正在执行的操作。
我能够使用参数节点 (node.parent._collected ) 获取模块中的总测试信息,但我找不到检查测试是否已执行的方法。现在,我所做的就是检查此列表中当前测试的索引,看看有多少仍在等待执行的队列中。
def pytest_exception_interact(node, call, report):
pass
如果谁有更好的解决办法请告诉我。
"pytest_exception_interact" 仅在引发异常时调用。
您可以使用:
def pytest_collection_finish(session):
total_tests_number = len(session.items)