K07_HttpRunner参数化:外置参数 + CSV文件 + 组合参数(笛卡尔积式组合)
在测试用例集合(testsuite)中实现参数化:
- 用例中参数个数:2个 (用户名和密码同时进行参数化处理)
- 数据源提供:保存在外部 csv 文件中
- 测试数据: 正确的“用户名/密码”组合为 “admin/admin”
- 关于组合: “用户名+密码”进行笛卡尔积式组合
- 数据文件: 需要定义两个单独的 csv 文件,一个用户保存用户名参数数据,一个用于保存密码参数数据,每个用户名记录都和所有的密码记录进行充分的组合(笛卡尔积)。
定义文件列表:
测试用例文件: TestCase_Login.yml
- config:
name: 测试用例 - 登录 - 固定参数组合
- test:
name: 测试步骤 - 登录
request:
url: http://localhost/myweb/jxc/index.asp?action=login
method: POST
data:
# 将用户名和密码均设置为参数(变量)
username: $p_uname
pwd: $p_pwd
extract:
- top: <frame src=\"(.*)\" name=\"topFrame\"
validate:
- eq: [$top, top.asp]
测试用例集合文件: TestSuite.yml
config:
name: 测试集 - 参数进行固定组合
testcases:
testcase01:
name: 固定参数组合处理
testcase: TestCase_Login.yml
parameters:
# 每个参数都从独立文件中提取,并进行笛卡尔积组合
p_uname: ${P(params_username.csv)}
p_pwd: ${P(params_pwd.csv)}
测试数据文件(用户名): params_username.csv
p_uname
admi
admina
admin
测试数据文件(密码): params_pwd.csv
p_pwd
1234
abcd
admin
执行后查看测试报告