mirror of
https://github.com/httprunner/httprunner.git
synced 2026-07-12 16:01:27 +08:00
change: startproject demo
This commit is contained in:
14
.github/workflows/hrp-scaffold.yml
vendored
14
.github/workflows/hrp-scaffold.yml
vendored
@@ -34,10 +34,10 @@ jobs:
|
|||||||
- name: Run generated demo tests
|
- name: Run generated demo tests
|
||||||
run: ./output/hrp run demo/testcases/
|
run: ./output/hrp run demo/testcases/
|
||||||
- name: Run API test demo in examples
|
- name: Run API test demo in examples
|
||||||
run: ./output/hrp run examples/demo-with-py-plugin/testcases/demo_with_funplugin.json
|
run: ./output/hrp run examples/demo-with-py-plugin/testcases/demo.json
|
||||||
- name: Run load test demo in examples
|
- name: Run load test demo in examples
|
||||||
run: |
|
run: |
|
||||||
./output/hrp boom examples/demo-with-py-plugin/testcases/demo_with_funplugin.json --spawn-count 10 --spawn-rate 10 --loop-count 10
|
./output/hrp boom examples/demo-with-py-plugin/testcases/demo.json --spawn-count 10 --spawn-rate 10 --loop-count 10
|
||||||
|
|
||||||
scaffold-with-go-plugin:
|
scaffold-with-go-plugin:
|
||||||
strategy:
|
strategy:
|
||||||
@@ -63,11 +63,11 @@ jobs:
|
|||||||
- name: Run API test demo in examples
|
- name: Run API test demo in examples
|
||||||
run: |
|
run: |
|
||||||
go build -o examples/demo-with-go-plugin/debugtalk.bin examples/demo-with-go-plugin/plugin/debugtalk.go
|
go build -o examples/demo-with-go-plugin/debugtalk.bin examples/demo-with-go-plugin/plugin/debugtalk.go
|
||||||
./output/hrp run examples/demo-with-go-plugin/testcases/demo_with_funplugin.json
|
./output/hrp run examples/demo-with-go-plugin/testcases/demo.json
|
||||||
- name: Run load test demo in examples
|
- name: Run load test demo in examples
|
||||||
run: |
|
run: |
|
||||||
go build -o examples/demo-with-go-plugin/debugtalk.bin examples/demo-with-go-plugin/plugin/debugtalk.go
|
go build -o examples/demo-with-go-plugin/debugtalk.bin examples/demo-with-go-plugin/plugin/debugtalk.go
|
||||||
./output/hrp boom examples/demo-with-go-plugin/testcases/demo_with_funplugin.json --spawn-count 10 --spawn-rate 10 --loop-count 10
|
./output/hrp boom examples/demo-with-go-plugin/testcases/demo.json --spawn-count 10 --spawn-rate 10 --loop-count 10
|
||||||
|
|
||||||
scaffold-without-custom-plugin:
|
scaffold-without-custom-plugin:
|
||||||
strategy:
|
strategy:
|
||||||
@@ -89,9 +89,9 @@ jobs:
|
|||||||
- name: Run start project
|
- name: Run start project
|
||||||
run: ./output/hrp startproject demo --ignore-plugin
|
run: ./output/hrp startproject demo --ignore-plugin
|
||||||
- name: Run generated demo tests
|
- name: Run generated demo tests
|
||||||
run: ./output/hrp run demo/testcases/demo_without_funplugin.json
|
run: ./output/hrp run demo/testcases/requests.json
|
||||||
- name: Run API test demo in examples
|
- name: Run API test demo in examples
|
||||||
run: ./output/hrp run examples/demo-without-plugin/testcases/demo_without_funplugin.json
|
run: ./output/hrp run examples/demo-without-plugin/testcases/requests.json
|
||||||
- name: Run load test demo in examples
|
- name: Run load test demo in examples
|
||||||
run: |
|
run: |
|
||||||
./output/hrp boom examples/demo-without-plugin/testcases/demo_without_funplugin.json --spawn-count 10 --spawn-rate 10 --loop-count 10
|
./output/hrp boom examples/demo-without-plugin/testcases/requests.json --spawn-count 10 --spawn-rate 10 --loop-count 10
|
||||||
|
|||||||
@@ -2,4 +2,4 @@ module plugin
|
|||||||
|
|
||||||
go 1.16
|
go 1.16
|
||||||
|
|
||||||
require github.com/httprunner/funplugin v0.4.5 // indirect
|
require github.com/httprunner/funplugin v0.4.6 // indirect
|
||||||
|
|||||||
@@ -58,8 +58,8 @@ github.com/hashicorp/go-plugin v1.4.3 h1:DXmvivbWD5qdiBts9TpBC7BYL1Aia5sxbRgQB+v
|
|||||||
github.com/hashicorp/go-plugin v1.4.3/go.mod h1:5fGEH17QVwTTcR0zV7yhDPLLmFX9YSZ38b18Udy6vYQ=
|
github.com/hashicorp/go-plugin v1.4.3/go.mod h1:5fGEH17QVwTTcR0zV7yhDPLLmFX9YSZ38b18Udy6vYQ=
|
||||||
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb h1:b5rjCoWHc7eqmAS4/qyk21ZsHyb6Mxv/jykxvNTkU4M=
|
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb h1:b5rjCoWHc7eqmAS4/qyk21ZsHyb6Mxv/jykxvNTkU4M=
|
||||||
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
||||||
github.com/httprunner/funplugin v0.4.5 h1:2KCj5AZZA22OER6TN5P/PSBYFMiKpgTmCRbDmHB1tos=
|
github.com/httprunner/funplugin v0.4.6 h1:wwpjzo3G9a5BCXBkHs845w4ifKaCtVa/yQjREQjQOgo=
|
||||||
github.com/httprunner/funplugin v0.4.5/go.mod h1:vPyeJIfbpGe0epZZtAV0wCn16gLY9+imSw/zfxq0Lcc=
|
github.com/httprunner/funplugin v0.4.6/go.mod h1:vPyeJIfbpGe0epZZtAV0wCn16gLY9+imSw/zfxq0Lcc=
|
||||||
github.com/jhump/protoreflect v1.6.0/go.mod h1:eaTn3RZAmMBcV0fifFvlm6VHNz3wSkYyXYWUh7ymB74=
|
github.com/jhump/protoreflect v1.6.0/go.mod h1:eaTn3RZAmMBcV0fifFvlm6VHNz3wSkYyXYWUh7ymB74=
|
||||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ teststeps:
|
|||||||
variables:
|
variables:
|
||||||
foo1: testcase_ref_bar1
|
foo1: testcase_ref_bar1
|
||||||
expect_foo1: testcase_ref_bar1
|
expect_foo1: testcase_ref_bar1
|
||||||
testcase: testcases/demo_requests.yml
|
testcase: testcases/requests.yml
|
||||||
export:
|
export:
|
||||||
- foo3
|
- foo3
|
||||||
-
|
-
|
||||||
138
examples/demo-with-go-plugin/testcases/requests.json
Normal file
138
examples/demo-with-go-plugin/testcases/requests.json
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"name": "request methods testcase with functions",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "config_bar1",
|
||||||
|
"foo2": "config_bar2",
|
||||||
|
"expect_foo1": "config_bar1",
|
||||||
|
"expect_foo2": "config_bar2"
|
||||||
|
},
|
||||||
|
"base_url": "https://postman-echo.com",
|
||||||
|
"verify": false,
|
||||||
|
"export": [
|
||||||
|
"foo3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"teststeps": [
|
||||||
|
{
|
||||||
|
"name": "get with params",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "bar11",
|
||||||
|
"foo2": "bar21",
|
||||||
|
"sum_v": "${sum_two_int(1, 2)}"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "GET",
|
||||||
|
"url": "/get",
|
||||||
|
"params": {
|
||||||
|
"foo1": "$foo1",
|
||||||
|
"foo2": "$foo2",
|
||||||
|
"sum_v": "$sum_v"
|
||||||
|
},
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"extract": {
|
||||||
|
"foo3": "body.args.foo2"
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.foo1",
|
||||||
|
"bar11"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.sum_v",
|
||||||
|
"3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.foo2",
|
||||||
|
"bar21"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "post raw text",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "bar12",
|
||||||
|
"foo3": "bar32"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "POST",
|
||||||
|
"url": "/post",
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}",
|
||||||
|
"Content-Type": "text/plain"
|
||||||
|
},
|
||||||
|
"data": "This is expected to be sent back as part of response body: $foo1-$foo2-$foo3."
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.data",
|
||||||
|
"This is expected to be sent back as part of response body: bar12-$expect_foo2-bar32."
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "post form data",
|
||||||
|
"variables": {
|
||||||
|
"foo2": "bar23"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "POST",
|
||||||
|
"url": "/post",
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}",
|
||||||
|
"Content-Type": "application/x-www-form-urlencoded"
|
||||||
|
},
|
||||||
|
"data": "foo1=$foo1&foo2=$foo2&foo3=$foo3"
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo1",
|
||||||
|
"$expect_foo1"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo2",
|
||||||
|
"bar23"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo3",
|
||||||
|
"bar21"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -13,7 +13,7 @@ teststeps:
|
|||||||
variables:
|
variables:
|
||||||
foo1: testcase_ref_bar1
|
foo1: testcase_ref_bar1
|
||||||
expect_foo1: testcase_ref_bar1
|
expect_foo1: testcase_ref_bar1
|
||||||
testcase: testcases/demo_requests.yml
|
testcase: testcases/requests.yml
|
||||||
export:
|
export:
|
||||||
- foo3
|
- foo3
|
||||||
-
|
-
|
||||||
138
examples/demo-with-py-plugin/testcases/requests.json
Normal file
138
examples/demo-with-py-plugin/testcases/requests.json
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"name": "request methods testcase with functions",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "config_bar1",
|
||||||
|
"foo2": "config_bar2",
|
||||||
|
"expect_foo1": "config_bar1",
|
||||||
|
"expect_foo2": "config_bar2"
|
||||||
|
},
|
||||||
|
"base_url": "https://postman-echo.com",
|
||||||
|
"verify": false,
|
||||||
|
"export": [
|
||||||
|
"foo3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"teststeps": [
|
||||||
|
{
|
||||||
|
"name": "get with params",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "bar11",
|
||||||
|
"foo2": "bar21",
|
||||||
|
"sum_v": "${sum_two_int(1, 2)}"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "GET",
|
||||||
|
"url": "/get",
|
||||||
|
"params": {
|
||||||
|
"foo1": "$foo1",
|
||||||
|
"foo2": "$foo2",
|
||||||
|
"sum_v": "$sum_v"
|
||||||
|
},
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"extract": {
|
||||||
|
"foo3": "body.args.foo2"
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.foo1",
|
||||||
|
"bar11"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.sum_v",
|
||||||
|
"3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.foo2",
|
||||||
|
"bar21"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "post raw text",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "bar12",
|
||||||
|
"foo3": "bar32"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "POST",
|
||||||
|
"url": "/post",
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}",
|
||||||
|
"Content-Type": "text/plain"
|
||||||
|
},
|
||||||
|
"data": "This is expected to be sent back as part of response body: $foo1-$foo2-$foo3."
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.data",
|
||||||
|
"This is expected to be sent back as part of response body: bar12-$expect_foo2-bar32."
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "post form data",
|
||||||
|
"variables": {
|
||||||
|
"foo2": "bar23"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "POST",
|
||||||
|
"url": "/post",
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}",
|
||||||
|
"Content-Type": "application/x-www-form-urlencoded"
|
||||||
|
},
|
||||||
|
"data": "foo1=$foo1&foo2=$foo2&foo3=$foo3"
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo1",
|
||||||
|
"$expect_foo1"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo2",
|
||||||
|
"bar23"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo3",
|
||||||
|
"bar21"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -102,7 +102,7 @@ func CreateScaffold(projectName string, pluginType PluginType, force bool) error
|
|||||||
// create demo testcases
|
// create demo testcases
|
||||||
if pluginType == Ignore {
|
if pluginType == Ignore {
|
||||||
err := CopyFile("templates/testcases/demo_without_funplugin.json",
|
err := CopyFile("templates/testcases/demo_without_funplugin.json",
|
||||||
filepath.Join(projectName, "testcases", "demo_without_funplugin.json"))
|
filepath.Join(projectName, "testcases", "requests.json"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -111,17 +111,22 @@ func CreateScaffold(projectName string, pluginType PluginType, force bool) error
|
|||||||
}
|
}
|
||||||
|
|
||||||
err = CopyFile("templates/testcases/demo_with_funplugin.json",
|
err = CopyFile("templates/testcases/demo_with_funplugin.json",
|
||||||
filepath.Join(projectName, "testcases", "demo_with_funplugin.json"))
|
filepath.Join(projectName, "testcases", "demo.json"))
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
err = CopyFile("templates/testcases/demo_requests.json",
|
||||||
|
filepath.Join(projectName, "testcases", "requests.json"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
err = CopyFile("templates/testcases/demo_requests.yml",
|
err = CopyFile("templates/testcases/demo_requests.yml",
|
||||||
filepath.Join(projectName, "testcases", "demo_requests.yml"))
|
filepath.Join(projectName, "testcases", "requests.yml"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
err = CopyFile("templates/testcases/demo_ref_testcase.yml",
|
err = CopyFile("templates/testcases/demo_ref_testcase.yml",
|
||||||
filepath.Join(projectName, "testcases", "demo_ref_testcase.yml"))
|
filepath.Join(projectName, "testcases", "ref_testcase.yml"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ teststeps:
|
|||||||
variables:
|
variables:
|
||||||
foo1: testcase_ref_bar1
|
foo1: testcase_ref_bar1
|
||||||
expect_foo1: testcase_ref_bar1
|
expect_foo1: testcase_ref_bar1
|
||||||
testcase: testcases/demo_requests.yml
|
testcase: testcases/requests.yml
|
||||||
export:
|
export:
|
||||||
- foo3
|
- foo3
|
||||||
-
|
-
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# NOTE: Generated By HttpRunner v4.0.0
|
# NOTE: Generated By HttpRunner v4.0.0
|
||||||
# FROM: testcases/demo_ref_testcase.yml
|
# FROM: testcases/ref_testcase.yml
|
||||||
|
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
|
|||||||
138
hrp/internal/scaffold/templates/testcases/demo_requests.json
Normal file
138
hrp/internal/scaffold/templates/testcases/demo_requests.json
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"name": "request methods testcase with functions",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "config_bar1",
|
||||||
|
"foo2": "config_bar2",
|
||||||
|
"expect_foo1": "config_bar1",
|
||||||
|
"expect_foo2": "config_bar2"
|
||||||
|
},
|
||||||
|
"base_url": "https://postman-echo.com",
|
||||||
|
"verify": false,
|
||||||
|
"export": [
|
||||||
|
"foo3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"teststeps": [
|
||||||
|
{
|
||||||
|
"name": "get with params",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "bar11",
|
||||||
|
"foo2": "bar21",
|
||||||
|
"sum_v": "${sum_two_int(1, 2)}"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "GET",
|
||||||
|
"url": "/get",
|
||||||
|
"params": {
|
||||||
|
"foo1": "$foo1",
|
||||||
|
"foo2": "$foo2",
|
||||||
|
"sum_v": "$sum_v"
|
||||||
|
},
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"extract": {
|
||||||
|
"foo3": "body.args.foo2"
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.foo1",
|
||||||
|
"bar11"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.sum_v",
|
||||||
|
"3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.args.foo2",
|
||||||
|
"bar21"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "post raw text",
|
||||||
|
"variables": {
|
||||||
|
"foo1": "bar12",
|
||||||
|
"foo3": "bar32"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "POST",
|
||||||
|
"url": "/post",
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}",
|
||||||
|
"Content-Type": "text/plain"
|
||||||
|
},
|
||||||
|
"data": "This is expected to be sent back as part of response body: $foo1-$foo2-$foo3."
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.data",
|
||||||
|
"This is expected to be sent back as part of response body: bar12-$expect_foo2-bar32."
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "post form data",
|
||||||
|
"variables": {
|
||||||
|
"foo2": "bar23"
|
||||||
|
},
|
||||||
|
"request": {
|
||||||
|
"method": "POST",
|
||||||
|
"url": "/post",
|
||||||
|
"headers": {
|
||||||
|
"User-Agent": "funplugin/${get_version()}",
|
||||||
|
"Content-Type": "application/x-www-form-urlencoded"
|
||||||
|
},
|
||||||
|
"data": "foo1=$foo1&foo2=$foo2&foo3=$foo3"
|
||||||
|
},
|
||||||
|
"validate": [
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"status_code",
|
||||||
|
200
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo1",
|
||||||
|
"$expect_foo1"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo2",
|
||||||
|
"bar23"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"eq": [
|
||||||
|
"body.form.foo3",
|
||||||
|
"bar21"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
# NOTE: Generated By HttpRunner v4.0.0
|
# NOTE: Generated By HttpRunner v4.0.0
|
||||||
# FROM: testcases/demo_requests.yml
|
# FROM: testcases/requests.yml
|
||||||
|
|
||||||
|
|
||||||
from httprunner import HttpRunner, Config, Step, RunRequest, RunTestCase
|
from httprunner import HttpRunner, Config, Step, RunRequest
|
||||||
|
|
||||||
|
|
||||||
class TestCaseDemoRequests(HttpRunner):
|
class TestCaseDemoRequests(HttpRunner):
|
||||||
|
|||||||
@@ -207,7 +207,7 @@ func TestLoadTestCases(t *testing.T) {
|
|||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fatal()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, len(testCases), 3) {
|
if !assert.Equal(t, len(testCases), 4) {
|
||||||
t.Fatal()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -217,7 +217,7 @@ func TestLoadTestCases(t *testing.T) {
|
|||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fatal()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, len(testCases), 3) {
|
if !assert.Equal(t, len(testCases), 4) {
|
||||||
t.Fatal()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user