小编Anc*_*nav的帖子

PyTest 按顺序进行参数化测试

我有 2 个带有参数的 pyTest 测试用例。我想使用两个参数按顺序运行它们,而不是使用所有可能的值运行第一个测试,然后开始第二个测试。

考虑下面的测试代码:

import pytest


@pytest.mark.parametrize("param1", [("A"), ("B")])
class TestClassTests:
    def test_01_test(self, param1):
        ...

    def test_02_test(self, param1):
        ...
Run Code Online (Sandbox Code Playgroud)

我得到的执行顺序是:

  1. test_01_test -- (A)
  2. test_01_test -- (B)
  3. test_02_test -- (A)
  4. test_02_test -- (B)

我想要的顺序是:

  1. test_01_test -- (A)
  2. test_02_test -- (A)
  3. test_01_test -- (B)
  4. test_02_test -- (B)

python pytest parameterized-tests pytest-order

2
推荐指数
1
解决办法
1200
查看次数