加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

pytest之参数化parametrize的使用

发布时间:2020-12-17 17:06:45 所属栏目:Python 来源:网络整理
导读:在测试用例的前面加上: @pytest.mark.parametrize("参数名",列表数据) 参数名:用来接收每一项数据,并作为测试用例的参数。 列表数据:一组测试数据。 ? 示例代码: import pytesttest_datas = [ ( 11,22,33 ),( 22,33,55 )]datas_dict = [ { " a " : 1, "

在测试用例的前面加上:
@pytest.mark.parametrize("参数名",列表数据)
参数名:用来接收每一项数据,并作为测试用例的参数。
列表数据:一组测试数据。

?

示例代码:

import pytest
test_datas = [
    (11,22,33),(22,33,55)
]

datas_dict = [
    {"a": 1,"b": 2,"c": 3},{"a": 11,"b": 22,"c": 33},{"a": 111,"b": 222,"c": 333},]

# 方式一:直接写
@pytest.mark.parametrize("a,b,c",[(1,2,3),(4,5,9)])
def test_add01(a,c):
    res = a + b
    assert res == c

# 方式二:参数为列表中嵌套元组
@pytest.mark.parametrize("data",test_datas)
def test_add02(data):
    res = data[0] + data[1]
    assert res == data[2]

# 方式三:参数为列表中嵌套字典
@pytest.mark.parametrize("data",datas_dict)
def test_add03(data):
    res = data["a"] + data["b"]
    assert res == data["c"]

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读