api模板
name: 登录接口模板
variables:
expected_status_code: 200
password: '800001'
username: '800001'
vercode: ${gen_random_string(5)}
request:
url: "/api/login"
json:
password: '$password'
username: '$username'
vercode: '$vercode'
method: POST
validate:
- eq: ["status_code", $expected_status_code]
登录测试用例
- config:
base_url: "http://192.168.1.100:8093"
- test:
name: 登录
api: api/login.yaml
variables:
password: '800001'
username: '800001'
validate:
- eq: ["content.success", True]
单个参数实现参数化
config:
name: "用户名参数化"
testcases:
testcase1_name:
testcase: E:\untitled2\demo\testcases\login_demo.yaml
parameters:
username: ["800001","800002","800003"]
两个参数实现参数化
config:
name: "demo"
testcases:
testcase1_name:
testcase: E:\untitled2\demo\testcases\login_demo.yaml
parameters:
username-password:
- ["800001","800001"]
- ["800002","800002"]
- ["800003","800003"]
单个参数引用csv
config:
name: "demo"
testcases:
testcase1_name:
testcase: E:\untitled2\demo\testcases\login_demo.yaml
parameters:
username: ${P(testsuites/user.csv)}
csv的文件内容
username
800002
800003
800001
800009
多个参数引用csv
config:
name: "demo"
testcases:
testcase1_name:
testcase: E:\untitled2\demo\testcases\login_demo.yaml
parameters:
username-password: ${P(testsuites/userpwd.csv)}
csv的文件内容
username,password
800001,800001
800002,800002
800003,800003
800004,800004
两个参数引用自定义函数
config:
name: "demo"
testcases:
testcase1_name:
testcase: E:\untitled2\demo\testcases\login_demo.yaml
parameters:
username-password: ${create_account(10)}
创建用户方法
def create_account(number):
accounts=[]
for index in range(1,number):
accounts.append({'username':str(800001+index),'password':str(800001+index)})
return accounts