本文主要是介绍Pytest-parametrize实现测试用例与测试数据分离,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Pytest自动化框架,实现自动化测试用例与测试数据分离方法:
1.测试用例数据准备,使用yaml文件编辑,如下述teladress.yaml
2.通过pytest框架装饰器@pytest.mark.parametrize实现测试数据传参
示例:
测试用例文件:test_mobile.py
@pytest.mark.mobile@pytest.mark.parametrize("caseinfo",read_yaml_testcase(os.path.dirname(__file__)+'/teladress.yaml'))def test_teladress01(self,caseinfo):method = caseinfo['request']['method']url = caseinfo['request']['url']data=caseinfo['request']['data']re = requests.request(method,url=url,params=data)code = re.json()['code']write_yaml({'code': code})assert code == 200
测试数据文件:teladress.yaml
-feature: 电话测试模块story: 获取电话归属地接口title: 能成功获取任意电话号码归属地信息request:method: geturl: https://api.oioweb.cn/api/common/teladressdata:mobile: 1889090787validate: null
-feature: 电话测试模块story: 获取电话归属地接口title: 非常规电话号码归属地信息测试request:method: geturl: https://api.oioweb.cn/api/common/teladressdata:mobile: 00000validate: null
这篇关于Pytest-parametrize实现测试用例与测试数据分离的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!