Python Py.test循环多次通过测试
我尝试重复N次测试(收集的测试相同) 原因:通过这样做,我想看看测试的速度是否降低,或者我可以收集一个参数的“平均时间”,然后通过另一个参数,再次获得“平均时间” 我的理解是使用Python Py.test循环多次通过测试,python,pytest,Python,Pytest,我尝试重复N次测试(收集的测试相同) 原因:通过这样做,我想看看测试的速度是否降低,或者我可以收集一个参数的“平均时间”,然后通过另一个参数,再次获得“平均时间” 我的理解是使用def pytest\u runtestloop()hook,但是我对它有问题 以下是我的钩子代码: def pytest_runtestloop(session): repeat = int(session.config.option.repeat) assert isinstance(repeat,
def pytest\u runtestloop()
hook,但是我对它有问题
以下是我的钩子代码:
def pytest_runtestloop(session):
repeat = int(session.config.option.repeat)
assert isinstance(repeat, int), "Repeat must be an integer"
for i in range(repeat): #@UnusedVariable
session.config.pluginmanager.getplugin("main").pytest_runtestloop(session)
return True
问题在于,“设置”仅在第一次运行时运行:
例如:
class TestSomething(object):
@classmethod
@pytest.fixture(scope = "class", autouse = True)
def setup(self):
//setup function
def test_something(self):
//test function
这里setup
将仅在第一个循环期间调用,如果我将session.config.option.设置为2,则将同时调用test\u something
我做错了什么?有更好的方法吗?pytest-2.3.4似乎在内部保持一些状态,以防止装置再次运行pytest\u runtest\u循环
编写时没有考虑到您的用例。你可以提交一个关于它的“bug”问题,我们可以看看我们能做些什么来修复它。(我很快看了看,但无法立即看出哪里出了问题,需要更多的探索)