feat: data-driven.

This commit is contained in:
徐聪
2021-12-28 18:16:02 +08:00
parent 2f5afb5ffc
commit 43deb78b26
11 changed files with 268 additions and 90 deletions

4
examples/account.csv Normal file
View File

@@ -0,0 +1,4 @@
username,password
test1,111111
test2,222222
test3,333333
1 username password
2 test1 111111
3 test2 222222
4 test3 333333

View File

@@ -7,11 +7,6 @@ config:
"n": 5
varFoo1: ${gen_random_string($n)}
varFoo2: ${max($a, $b)}
parameters:
username-password: ${parameterize(examples/account.csv)}
user_agent: ["iOS/10.1", "iOS/10.2"]
parameters_setting:
strategy: random
teststeps:
- name: transaction 1 start
transaction:
@@ -24,8 +19,6 @@ teststeps:
params:
foo1: $varFoo1
foo2: $varFoo2
foo3: $username
foo4: $password
headers:
User-Agent: HttpRunnerPlus
variables:

View File

@@ -0,0 +1,57 @@
{
"config": {
"name": "request methods testcase: validate with parameters",
"parameters": {
"user_agent": [
"iOS/10.1",
"iOS/10.2"
],
"username-password": "${parameterize(examples/account.csv)}",
"app_version": "${getAppVersion()}"
},
"parameters_setting": {
"strategy": "random"
},
"variables": {
"app_version": "f1"
},
"base_url": "https://postman-echo.com",
"verify": false
},
"teststeps": [
{
"name": "get with params",
"variables": {
"foo1": "$username",
"foo2": "$password",
"foo3": "$app_version"
},
"request": {
"method": "GET",
"url": "/get",
"params": {
"foo1": "$foo1",
"foo2": "$foo2",
"foo3": "$foo3"
},
"headers": {
"User-Agent": "$user_agent,$app_version"
}
},
"validate": [
{
"check": "status_code",
"assert": "equals",
"expect": 200,
"msg": "check status code"
},
{
"check": "body.args.foo3",
"assert": "not_equal",
"expect": "f1",
"msg": "check app version"
}
]
}
]
}

View File

@@ -0,0 +1,38 @@
config:
name: "request methods testcase: validate with parameters"
parameters:
user_agent: ["iOS/10.1", "iOS/10.2"]
username-password: ${parameterize(examples/account.csv)}
app_version: ${getAppVersion()}
parameters_setting:
strategy: random
variables:
app_version: f1
base_url: "https://postman-echo.com"
verify: False
teststeps:
-
name: get with params
variables:
foo1: $username
foo2: $password
foo3: $app_version
request:
method: GET
url: /get
params:
foo1: $foo1
foo2: $foo2
foo3: $foo3
headers:
User-Agent: $user_agent,$app_version
validate:
- check: status_code
assert: equals
expect: 200
msg: check status code
- check: body.args.foo3
assert: not_equal
expect: f1
msg: check app version