httprunner 3.x(二)测试用例结构
测试用例结构
httprunenr 3.x版本弱化了api层的概念,直接在testcase中写request请求,如果是单个请求,也可以直接写成一个testcase
每一个testcase必须具有两个类属性:config 和 teststeps
config部分,配置测试用例级别的设置属性包含:
属性名称 | 是否必填 | 作用 |
name | 必填 | 指定测试用例名称。将显示在执行日志和测试报告中 |
base_url | 可选 | 如果base_url指定,则teststemp中的url可以设置相对路径部分 |
verify | 可选 | https请求时,是否校验证书,默认True,忽略证书校验可设置为False |
variables | 可选 | 指定测试用例公共变量。每个测试步骤都可以引用未在步骤变量中设置的配置变量, |
export | 可选 | 指出导出的测试用例会话变量,把变量暴漏出来,设置为全局变量 |
yaml中teststeps步骤参数
属性名称 | 是否必填 | 作用 |
name | 必填 | 指定测试步骤名称 |
request | 必填 | 指定测试步骤变量,参数引用变量“$变量名” |
variables | 可选 | 指定测试步骤变量,参数引用变量"$变量名" |
extract | 可选 | 提取返回结果 |
export | 可选 | 导出测试用例会话变量,设置全局变量 |
validate | 可选 | 校验返回结果 |
pytest用例中teststeps可以多个步骤,每个步骤对应一个接口请求,也就是RunRequest(测试步骤)
属性名称 | 是否必填 | 作用 |
name | 必填 | 指定测试步骤名称 |
method(url) | 必填 | 如果config中设置base_url,method中只能设置相对路径 |
with_params |
可选 | 对应与params参数requests,reques |
wth_headers | 可选 | 对应与headers参数requests,reques |
with_cookies | 可选 | cookes参数requests,request |
with_data | 可选 | 对应的data参数requests,request |
with_json | 可选 | 对应的json参数requests,request |
with_variables | 可选 |
指定测试步骤变量每个步骤变量都是独立的,参数引用使用“$变量名”,如果是函数引用使用“${函数名()}” |
extract 数据提取
with_jmespath(jmes_path:文字,var_name:文字)
1、mes_path:jmespath表达式
2、var_name:存储提取值得变量名,可以在后续测试步骤引用它
validate 校验结果
assert_XXX(jmes_path:Text,expected_value:zhu,message: Test = "")
yaml结构 testcase