【问题标题】:How to mark individual parameterized tests with a marker?Pytest:如何用标记标记单个参数化测试
【发布时间】:2020-12-13 02:57:27
【问题描述】:

我一直在尝试使用 @pytest.mark.parametrize 参数化我的测试,并且我有一个营销人员 @pytest.mark.test("1234"),我使用来自测试标记的值将结果发布到吉拉。请注意为每个 test_data 的标记更改给出的值。基本上代码如下所示。

@pytest.mark.foo
@pytest.mark.parametrize(("n", "expected"),[
    (1, 2),
    (2, 3)])
def test_increment(n, expected):
     assert n + 1 == expected

我想做类似的事情

@pytest.mark.foo
@pytest.mark.parametrize(("n", "expected"), [
    (1, 2,@pytest.mark.test("T1")),
    (2, 3,@pytest.mark.test("T2"))
])

在使用参数化测试时如何添加标记,因为标记的值预计会随着每次测试而变化?

【问题讨论】:

    标签: python pytest ui-automation qa pytest-django


    【解决方案1】:

    文档中对此进行了解释:https://docs.pytest.org/en/stable/example/markers.html#marking-individual-tests-when-using-parametrize

    这里也展示一下,应该是:

    @pytest.mark.foo
    @pytest.mark.parametrize(("n", "expected"), [
        pytest.param(1, 2, marks=pytest.mark.T1),
        pytest.param(2, 3, marks=pytest.mark.T2),
        (4, 5)
    ])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-27
      • 1970-01-01
      • 2014-09-02
      • 1970-01-01
      • 2021-04-02
      • 2013-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多