在pytest中并行运行参数化测试

时间:2015-04-10 11:24:12

标签: python pytest

我想并行运行参数化测试功能。这适用于并发测试场景。相同的测试用例与设备中的不同参数并行运行。完成一个测试函数的所有参数化变体后,我想继续下一个。

如果我们采用这个简单的例子,我想平行运行test_even的所有4个实例,然后转到test_odd。

@pytest.mark.parametrize("x", range(4))
def test_even(x):
    assert x % 2 == 0        
@pytest.mark.parametrize("x", range(4))
def test_odd(x):
    assert x % 2 != 0

有可能在pytest中做吗?我查了xdist,但找不到这种支持。有人可以就如何在pytest中实现这一点给出一些指示吗?

1 个答案:

答案 0 :(得分:2)

看看pytest-xdist它会做很多很酷的事情,包括允许你并行运行你的测试。

$ pip install pytest-xdist
$ pytest -n <num cpus>