pytest参数化

pytest数据参数化

用法 @pytest.mark.parametrize(argnames,argvalues)

argnames:要参数化的变量,string(逗号分割),list,tuple

argvalues:参数化的值,list[list],list[tuple],tuple[list],tuple[tuple]

举例

data.yaml 文件

-
  - 10
  - 20
-
  - 30
  - 40

python文件

import pytest
import yaml


@pytest.mark.parametrize("a,b", [(1, 2), (3, 4)])
def test_param(a, b):
    print(a+b)


@pytest.mark.parametrize(['a', 'b'], ([5, 6], [7, 8]))
def test_param_2(a, b):
    print(a + b)


@pytest.mark.parametrize(('a', 'b'), [[9, 10], [11, 12]])
def test_param_3(a, b):
    print(a + b)


@pytest.mark.parametrize(('a', 'b'), yaml.safe_load(open('data.yaml')))
def test_param_4(a, b):
    print(a + b)

对应结果

test_python_file.py .3
.7
.11
.15
.19
.23
.30
.70
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值