环境:httprunner==3.1.4 python==3.7.7
数据源指定支持三种方式:
在 YAML/JSON/py 中直接指定参数列表:该种方式最为简单易用,适合参数列表比较小的情况
通过内置的 parameterize(可简写为P)函数引用 CSV 文件:该种方式需要准备 CSV 数据文件,适合数据量比较大的情况
调用 debugtalk.py 中自定义的函数生成参数列表:该种方式最为灵活,可通过自定义 Python 函数实现任意场景的数据驱动机制,当需要动态生成参数列表时也需要选择该种方式
1. 在YML中直接指定参数列表
如:针对一个账号对应一个密码,对应一种预期结果
在config-parameters中设置对应参数列表,步骤中用${}进行引用,variables 和 parameters 设置相同名称变量时,parameters 优先级大于variables
遇到的坑:
parameters的参数化数据 每次只运行第一组的参数化数据
解决方案:
检查下依赖包:pydantic 的版本是不是1.8.2,如果不是可以卸载后重新下载1.8.2解决
2. 通过内置的 parameterize(可简写为P)函数引用 CSV 文件
创建csv文件,命名未userdata.csv,存放在项目的data文件夹下
parameterize中函数引用csv文件:
title-username-password-message: ${P(data/userdata.csv)}
遇到的坑:
httprunner.exceptions.ValidationFailure: assert status_code equal 200(str) ==> fail
解决方案:
在debugtalk.py中设置函数修改类型,再引用debugtalk.py中函数
3. 调用 debugtalk.py 中自定义的函数生成参数列表
标签:函数,parameters,py,列表,httprunner3,参数,驱动,debugtalk From: https://www.cnblogs.com/listening-y/p/17167905.html