pytest实现数据驱动的几种方式

发布时间 2023-06-28 19:04:59作者: sunshine阿星

1.  pytest之parametrize()实现数据驱动

方法:@pytest.mark.parametrize(args_nameargs_value)
name:参数名称
value:参数值
方法一:单个参数@pytest.mark.parametrize('caseinfo', ['张三','李四'] )
方法二:多个参数 @pytest.mark.parametrize('name,age', [['name','张三'],['age','24']])

    @pytest.mark.parametrize('res', data)

              data来源:data类型:list

2. pytest.fixture 使用params 实现数据驱动params=[key:value]

方法一、单个参数  @pytest.fixture(params=[{'args_name1': args_value1}, {'args_name1': args_value2}])

方法二、多个参数  @pytest.fixture(params=[{'args_name1': args_value1, "args_name2": args_value2}])

@pytest.fixture(params=[{'args_name1': args_value1},{'args_name': args_value2}])
def function(request):
name = request.param.get('args_name1')
name2 = request.param.get('args_name2')