想象一下我有test/unit/...
可以安全地并行运行并且test/functional/...
目前还不能并行运行。
有没有一种简单的方法可以说服 pytest 运行functional
依次?考虑到我们正在讨论大量的测试,因此改变每个测试函数/方法将会非常嘈杂。
目前,我们使用标记过滤器运行测试,因此主要是分开运行它们。尽管如此,我仍在寻找一种解决方案,以消除将它们分开运行的需要。
您可以实现自己的调度程序,其作用类似于load
or loadscope
,取决于测试定义在哪个模块中。示例:
from xdist.scheduler.loadscope import LoadScopeScheduling
class MyScheduler(LoadScopeScheduling):
def _split_scope(self, nodeid):
if 'test/functional' in nodeid:
return 'functional-tests'
return nodeid
def pytest_xdist_make_scheduler(config, log):
return MyScheduler(config, log)
所有测试均在test/functional
将被分组在同一节点下functional-tests
(因此在同一个工作线程中运行),其余部分将像往常一样并行运行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)