65 changed files with 2917 additions and 43 deletions
Unified View
Diff Options
-
5httprunner/.gitignore
-
2httprunner/api/login/admin_login_password.yml
-
18httprunner/api/login/admin_login_password1.yml
-
10httprunner/api/login/ldap_login_password.yml
-
51httprunner/api/product/app_product_create.yml
-
17httprunner/api/product/app_product_delete.yml
-
15httprunner/api/product/app_product_get.yml
-
51httprunner/api/product/app_product_update.yml
-
27httprunner/api/shop/app_shop_edit.yml
-
15httprunner/api/shop/app_shop_getinfo.yml
-
27httprunner/api/shop/app_shop_perfect.yml
-
27httprunner/api/store_paper/admin_store_create_paper.yml
-
15httprunner/api/store_paper/admin_store_delete_paper.yml
-
14httprunner/api/store_paper/admin_store_get_paperCategoryList.yml
-
27httprunner/api/store_paper/admin_store_update_paper.yml
-
23httprunner/cases/case.yml
-
4httprunner/cases/consignment_process/admin_proxysell_update_reservation.yml
-
11httprunner/cases/login/ldap_login_password.yml
-
1httprunner/debugtalk.py
-
9httprunner/steps/login/ldap_login_password.yml
-
2httprunner/steps/step.yml
-
2zhitongbao/.env
-
0zhitongbao/api/A_list_of_the_query.yml
-
0zhitongbao/api/Employees/ldap_Employee_details.yml
-
0zhitongbao/api/Employees/ldap_Employees_list.yml
-
0zhitongbao/api/Employees/ldap_Employees_update.yml
-
30zhitongbao/api/Member/Member_add.yml
-
13zhitongbao/api/Member/Member_delete.yml
-
11zhitongbao/api/Member/Member_list.yml
-
30zhitongbao/api/Member/Member_update.yml
-
0zhitongbao/api/Menu/ldap_Menu_add.yml
-
0zhitongbao/api/Menu/ldap_Menu_delete.yml
-
0zhitongbao/api/Menu/ldap_Menu_list.yml
-
0zhitongbao/api/Menu/ldap_Menu_update.yml
-
0zhitongbao/api/ldap_department_list.yml
-
0zhitongbao/api/login.yml
-
0zhitongbao/api/login/app_login.yml
-
15zhitongbao/api/login/ldap_QN_login.yml
-
0zhitongbao/api/login/ldap_login.yml
-
0zhitongbao/api/login/ldap_logout.yml
-
4zhitongbao/api/notification.yml
-
0zhitongbao/api/product/product_add.yml
-
0zhitongbao/api/product/product_delete.yml
-
0zhitongbao/api/product/product_list.yml
-
0zhitongbao/api/product/product_list_b.yml
-
0zhitongbao/api/product/product_update.yml
-
0zhitongbao/api/product/product_update_status.yml
-
0zhitongbao/api/role/ldap_roleMenu_list.yml
-
0zhitongbao/api/role/ldap_role_add.yml
-
0zhitongbao/api/role/ldap_role_list.yml
-
0zhitongbao/api/role/ldap_role_mass_update.yml
-
0zhitongbao/api/role/ldap_role_update.yml
-
0zhitongbao/debugtalk.py
-
492zhitongbao/reports/1600134084.html
-
492zhitongbao/reports/1600134497.html
-
516zhitongbao/reports/1600134541.html
-
492zhitongbao/reports/1600134565.html
-
492zhitongbao/reports/1600134650.html
-
0zhitongbao/testcases/demo_testcase.yml
-
0zhitongbao/testcases/ldap_Menu.yml
-
0zhitongbao/testcases/ldap_token.yml
-
0zhitongbao/testcases/product.yml
-
0zhitongbao/testcases/product_add.yml
-
0zhitongbao/testsuites/demo_testsuite.yml
-
0zhitongbao/testsuites/product/product_add.yml
@ -0,0 +1,5 @@ |
|||||
|
reports/* |
||||
|
__pycache__/* |
||||
|
*.pyc |
||||
|
.python-version |
||||
|
logs/* |
||||
@ -1,18 +0,0 @@ |
|||||
name: 销售账号登录 |
|
||||
variables: |
|
||||
phone: 13060994305 |
|
||||
password: 9602BF7A8C5FEAB91385D1BB9EA70DF0 |
|
||||
rememberMe: null |
|
||||
base_url: ${ENV(BURL)} |
|
||||
request: |
|
||||
url: /login/admin/adminLogin |
|
||||
method: POST |
|
||||
headers: |
|
||||
Content-Type: "application/json;charset=UTF-8" |
|
||||
json: |
|
||||
phone: $phone |
|
||||
password: $password |
|
||||
rememberMe: $rememberMe |
|
||||
validate: |
|
||||
- eq: ["status_code", 200] |
|
||||
- {"check": "content.msg", "comparator": "contains", "expect": "success"} |
|
||||
@ -0,0 +1,51 @@ |
|||||
|
name: app用户创建商品 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
bidType: 0 |
||||
|
biddingInterval: 0 |
||||
|
coverImgUrl: "string" |
||||
|
description: "string" |
||||
|
dopantRate: 0 |
||||
|
firstCategoryId: 0 |
||||
|
imgList: ["string"] |
||||
|
initialUnitPrice: 0 |
||||
|
locCityId: 0 |
||||
|
locDetails: "string" |
||||
|
locDistrictId: 0 |
||||
|
locProvinceId: 0 |
||||
|
lowestNum: 0 |
||||
|
secondCategoryId: 0 |
||||
|
stock: 0 |
||||
|
unitPrice: 0 |
||||
|
videoUrl: "string" |
||||
|
waterRate: 0 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/create/product |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
json: |
||||
|
bidType: $bidType |
||||
|
biddingInterval: $biddingInterval |
||||
|
coverImgUrl: $coverImgUrl |
||||
|
description: $description |
||||
|
dopantRate: $dopantRate |
||||
|
firstCategoryId: $firstCategoryId |
||||
|
imgList: $imgList |
||||
|
initialUnitPrice: $initialUnitPrice |
||||
|
locCityId: $locCityId |
||||
|
locDetails: $locDetails |
||||
|
locDistrictId: $locDistrictId |
||||
|
locProvinceId: $locProvinceId |
||||
|
lowestNum: $lowestNum |
||||
|
secondCategoryId: $secondCategoryId |
||||
|
stock: $stock |
||||
|
unitPrice: $unitPrice |
||||
|
videoUrl: $videoUrl |
||||
|
waterRate: $waterRate |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,17 @@ |
|||||
|
name: app用户删除商品 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
productId: 0 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/delete/product |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
json: |
||||
|
productId: $productId |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,15 @@ |
|||||
|
name: app用户查询商品 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
productId: 0 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/get/product/$productId |
||||
|
method: GET |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,51 @@ |
|||||
|
name: app用户修改商品 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
bidType: 0 |
||||
|
biddingInterval: 0 |
||||
|
coverImgUrl: "string" |
||||
|
description: "string" |
||||
|
dopantRate: 0 |
||||
|
firstCategoryId: 0 |
||||
|
imgList: ["string"] |
||||
|
initialUnitPrice: 0 |
||||
|
locCityId: 0 |
||||
|
locDetails: "string" |
||||
|
locDistrictId: 0 |
||||
|
locProvinceId: 0 |
||||
|
lowestNum: 0 |
||||
|
secondCategoryId: 0 |
||||
|
stock: 0 |
||||
|
unitPrice: 0 |
||||
|
videoUrl: "string" |
||||
|
waterRate: 0 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/update/product |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
json: |
||||
|
bidType: $bidType |
||||
|
biddingInterval: $biddingInterval |
||||
|
coverImgUrl: $coverImgUrl |
||||
|
description: $description |
||||
|
dopantRate: $dopantRate |
||||
|
firstCategoryId: $firstCategoryId |
||||
|
imgList: $imgList |
||||
|
initialUnitPrice: $initialUnitPrice |
||||
|
locCityId: $locCityId |
||||
|
locDetails: $locDetails |
||||
|
locDistrictId: $locDistrictId |
||||
|
locProvinceId: $locProvinceId |
||||
|
lowestNum: $lowestNum |
||||
|
secondCategoryId: $secondCategoryId |
||||
|
stock: $stock |
||||
|
unitPrice: $unitPrice |
||||
|
videoUrl: $videoUrl |
||||
|
waterRate: $waterRate |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,27 @@ |
|||||
|
name: app用户修改店铺信息 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
contactPhoneNo: 18219557422 |
||||
|
coverImgUrlList: ["http://medou.oss-cn-shenzhen.aliyuncs.com/bird_user/20090917463455009.jpg"] |
||||
|
locDetails: 车陂 |
||||
|
locDistrictId: 440106 |
||||
|
contacts: 测试 |
||||
|
name: 测试店铺 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/edit/store-information |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
json: |
||||
|
contactPhoneNo: $contactPhoneNo |
||||
|
coverImgUrlList: $coverImgUrlList |
||||
|
locDetails: $locDetails |
||||
|
locDistrictId: $locDistrictId |
||||
|
contacts: $contacts |
||||
|
name: $name |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,15 @@ |
|||||
|
name: app用户完善店铺 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
storeId: 18219557422 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/get/store-information/$storeId |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,27 @@ |
|||||
|
name: app用户完善店铺 |
||||
|
variables: |
||||
|
apptoken: ${ENV(ATOKEN)} |
||||
|
contactPhoneNo: 18219557422 |
||||
|
coverImgUrlList: ["http://medou.oss-cn-shenzhen.aliyuncs.com/bird_user/20090917463455009.jpg"] |
||||
|
locDetails: 车陂 |
||||
|
locDistrictId: 440106 |
||||
|
contacts: 测试 |
||||
|
name: 测试店铺 |
||||
|
base_url: ${ENV(AURL)} |
||||
|
request: |
||||
|
url: /recycle-service/update/store-information |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $apptoken |
||||
|
json: |
||||
|
contactPhoneNo: $contactPhoneNo |
||||
|
coverImgUrlList: $coverImgUrlList |
||||
|
locDetails: $locDetails |
||||
|
locDistrictId: $locDistrictId |
||||
|
contacts: $contacts |
||||
|
name: $name |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,27 @@ |
|||||
|
name: 后台管理员创建纸品品类 |
||||
|
variables: |
||||
|
token: ${ENV(LDAPTOKEN)} |
||||
|
description: "string" |
||||
|
enable: 0 |
||||
|
id: 0 |
||||
|
level: 0 |
||||
|
name: "string" |
||||
|
parentId: 0 |
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/store/create/paper |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $token |
||||
|
json: |
||||
|
description: $description |
||||
|
enable: $enable |
||||
|
id: $id |
||||
|
level: $level |
||||
|
name: $name |
||||
|
parentId: $parentId |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,15 @@ |
|||||
|
name: 后台管理员启用/禁用纸品品类 |
||||
|
variables: |
||||
|
token: ${ENV(LDAPTOKEN)} |
||||
|
paperId: "string" |
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/store/update/paper-status/$paperId |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $token |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,14 @@ |
|||||
|
name: 后台管理员查询纸品品类列表 |
||||
|
variables: |
||||
|
token: ${ENV(LDAPTOKEN)} |
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/store/get/paperCategoryList |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $token |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -0,0 +1,27 @@ |
|||||
|
name: 后台管理员编辑纸品品类 |
||||
|
variables: |
||||
|
token: ${ENV(LDAPTOKEN)} |
||||
|
description: "string" |
||||
|
enable: 0 |
||||
|
id: 0 |
||||
|
level: 0 |
||||
|
name: "string" |
||||
|
parentId: 0 |
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/store/update/paper |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json;charset=UTF-8" |
||||
|
X-APP-ID: "1" |
||||
|
Authorization: $token |
||||
|
json: |
||||
|
description: $description |
||||
|
enable: $enable |
||||
|
id: $id |
||||
|
level: $level |
||||
|
name: $name |
||||
|
parentId: $parentId |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": "successful"} |
||||
@ -1,18 +1,15 @@ |
|||||
|
|
||||
config: |
config: |
||||
name: "demo testsuite" |
|
||||
variables: |
|
||||
device_sn: "XYZ" |
|
||||
base_url: "http://127.0.0.1:5000" |
|
||||
|
name: "testsuites" |
||||
|
base_url: "http://127.0.0.1:80" |
||||
|
|
||||
testcases: |
testcases: |
||||
- |
- |
||||
name: call demo_testcase with data 1 |
|
||||
testcase: path/to/step.yml |
|
||||
variables: |
|
||||
device_sn: $device_sn |
|
||||
|
name: case one |
||||
|
testcase: path/to/step1.yml |
||||
|
parameters: |
||||
|
|
||||
- |
- |
||||
name: call demo_testcase with data 2 |
|
||||
testcase: path/to/step.yml |
|
||||
variables: |
|
||||
device_sn: $device_sn |
|
||||
|
name: case two |
||||
|
testcase: path/to/step2.yml |
||||
|
parameters: |
||||
|
|
||||
@ -0,0 +1,11 @@ |
|||||
|
testcases: |
||||
|
- |
||||
|
name: ldap密码登录测试套件 |
||||
|
testcase: steps/login/ldap_login_password.yml |
||||
|
parameters: |
||||
|
- title-username-password-code-message: |
||||
|
- ["登录成功","liangjinman@qniao.cn","qn123456",200,"登陆成功"] |
||||
|
- ["账号错误","admin","qn123456",200,"20003"] |
||||
|
- ["账号为空","","qn123456",200,"20001"] |
||||
|
- ["密码错误","liangjinman@qniao.cn","12345",200,"20003"] |
||||
|
- ["密码为空","liangjinman@qniao.cn","",200,"20002"] |
||||
@ -1 +0,0 @@ |
|||||
|
|
||||
@ -0,0 +1,9 @@ |
|||||
|
config: |
||||
|
name: ldap密码登录 |
||||
|
teststeps: |
||||
|
- |
||||
|
name: $title |
||||
|
api: api/login/ldap_login_password.yml |
||||
|
validate: |
||||
|
- eq: ["status_code", $code] |
||||
|
- {"check": "content.message", "comparator": "contains", "expect": $message} |
||||
@ -0,0 +1,30 @@ |
|||||
|
name: 新增会员 |
||||
|
variables: |
||||
|
bidPrice: 1000 |
||||
|
days: 30 |
||||
|
description: 新人首充优惠大大~~ |
||||
|
enable: 1 |
||||
|
icon: http://medou.oss-cn-shenzhen.aliyuncs.com/saas/20200624155949.png |
||||
|
realPrice: 100 |
||||
|
sellStrategy: common |
||||
|
title: 天 |
||||
|
|
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/member/new/member-expense-config |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json" |
||||
|
X-APP-ID: "470236309865238555" |
||||
|
Authorization: ${ENV(LDAPTOKEN)} |
||||
|
json: |
||||
|
bidPrice: $bidPrice |
||||
|
days: $days |
||||
|
description: $description |
||||
|
enable: $enable |
||||
|
icon: $icon |
||||
|
realPrice: $realPrice |
||||
|
sellStrategy: $sellStrategy |
||||
|
title: $title |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
@ -0,0 +1,13 @@ |
|||||
|
name: 删除会员 |
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: application/json |
||||
|
X-APP-ID: "470236309865238555" |
||||
|
Authorization: ${ENV(LDAPTOKEN)} |
||||
|
json: |
||||
|
idList: ["503182395336429568"] |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
@ -0,0 +1,11 @@ |
|||||
|
name: 会员列表查询 |
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/member/get/member-expense-config-list |
||||
|
method: GET |
||||
|
headers: |
||||
|
Content-Type: application/json |
||||
|
X-APP-ID: "470236309865238555" |
||||
|
Authorization: ${ENV(LDAPTOKEN)} |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
@ -0,0 +1,30 @@ |
|||||
|
name: 修改会员 |
||||
|
variables: |
||||
|
bidPrice: 1500 |
||||
|
days: 30 |
||||
|
description: 充就送,好礼等你来~~ |
||||
|
enable: 1 |
||||
|
icon: http://medou.oss-cn-shenzhen.aliyuncs.com/saas/20200624155949.png |
||||
|
realPrice: 200 |
||||
|
sellStrategy: common |
||||
|
title: 天 |
||||
|
|
||||
|
base_url: ${ENV(BURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/member/update/member-expense-config/502180735986307072 |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: "application/json" |
||||
|
X-APP-ID: "470236309865238555" |
||||
|
Authorization: ${ENV(LDAPTOKEN)} |
||||
|
json: |
||||
|
bidPrice: $bidPrice |
||||
|
days: $days |
||||
|
description: $description |
||||
|
enable: $enable |
||||
|
icon: $icon |
||||
|
realPrice: $realPrice |
||||
|
sellStrategy: $sellStrategy |
||||
|
title: $title |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
@ -0,0 +1,15 @@ |
|||||
|
name: ldap登录 |
||||
|
# QN 表示正式环境 |
||||
|
base_url: ${ENV(QNURL)} |
||||
|
request: |
||||
|
url: /recycle-service/admin/login |
||||
|
method: POST |
||||
|
headers: |
||||
|
Content-Type: application/x-www-form-urlencoded |
||||
|
X-APP-ID: "470236309865238555" |
||||
|
data: |
||||
|
username: zhangshan@qniao.cn |
||||
|
password: zhangshan123456 |
||||
|
validate: |
||||
|
- eq: ["status_code", 200] |
||||
|
- {"check": "content.message", "comparator": "eq", "expect": "登陆成功"} |
||||
@ -1,11 +1,11 @@ |
|||||
name: 账期过期钉钉提醒相关人员 |
name: 账期过期钉钉提醒相关人员 |
||||
base_url: ${ENV(BURL)} |
|
||||
|
base_url: ${ENV(QNURL)} |
||||
request: |
request: |
||||
url: /recycle-service/admin/proxy-sell/test/schedule |
url: /recycle-service/admin/proxy-sell/test/schedule |
||||
method: GET |
method: GET |
||||
headers: |
headers: |
||||
Content-Type: "application/json" |
Content-Type: "application/json" |
||||
X-APP-ID: "470236309865238555" |
X-APP-ID: "470236309865238555" |
||||
Authorization: ${ENV(LDAPTOKEN)} |
|
||||
|
Authorization: ${ENV(QNTOKEN)} |
||||
validate: |
validate: |
||||
- eq: ["status_code", 200] |
- eq: ["status_code", 200] |
||||
@ -0,0 +1,492 @@ |
|||||
|
<head> |
||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type" /> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
|
<title> - TestReport</title> |
||||
|
<style> |
||||
|
body { |
||||
|
background-color: #f2f2f2; |
||||
|
color: #333; |
||||
|
margin: 0 auto; |
||||
|
width: 960px; |
||||
|
} |
||||
|
#summary { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
#summary th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
#summary td { |
||||
|
background-color: lightblue; |
||||
|
text-align: center; |
||||
|
padding: 4px 8px; |
||||
|
} |
||||
|
.details { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
.details th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details tr .passed { |
||||
|
background-color: lightgreen; |
||||
|
} |
||||
|
.details tr .failed { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details tr .unchecked { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
.details td { |
||||
|
background-color: lightblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details .detail { |
||||
|
background-color: lightgrey; |
||||
|
font-size: smaller; |
||||
|
padding: 5px 10px; |
||||
|
line-height: 20px; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.details .success { |
||||
|
background-color: greenyellow; |
||||
|
} |
||||
|
.details .error { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details .failure { |
||||
|
background-color: salmon; |
||||
|
} |
||||
|
.details .skipped { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
|
||||
|
.button { |
||||
|
font-size: 1em; |
||||
|
padding: 6px; |
||||
|
width: 4em; |
||||
|
text-align: center; |
||||
|
background-color: #06d85f; |
||||
|
border-radius: 20px/50px; |
||||
|
cursor: pointer; |
||||
|
transition: all 0.3s ease-out; |
||||
|
} |
||||
|
a.button{ |
||||
|
color: gray; |
||||
|
text-decoration: none; |
||||
|
display: inline-block; |
||||
|
} |
||||
|
.button:hover { |
||||
|
background: #2cffbd; |
||||
|
} |
||||
|
|
||||
|
.overlay { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0, 0, 0, 0.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
line-height: 25px; |
||||
|
} |
||||
|
.overlay:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.popup { |
||||
|
margin: 70px auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
border-radius: 10px; |
||||
|
width: 50%; |
||||
|
position: relative; |
||||
|
transition: all 3s ease-in-out; |
||||
|
} |
||||
|
|
||||
|
.popup h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
font-family: Tahoma, Arial, sans-serif; |
||||
|
} |
||||
|
.popup .close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
} |
||||
|
.popup .close:hover { |
||||
|
color: #06d85f; |
||||
|
} |
||||
|
.popup .content { |
||||
|
max-height: 80%; |
||||
|
overflow: auto; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.popup .separator { |
||||
|
color:royalblue |
||||
|
} |
||||
|
|
||||
|
@media screen and (max-width: 700px) { |
||||
|
.box { |
||||
|
width: 70%; |
||||
|
} |
||||
|
.popup { |
||||
|
width: 70%; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
<h1>Test Report: </h1> |
||||
|
|
||||
|
<h2>Summary</h2> |
||||
|
<table id="summary"> |
||||
|
<tr> |
||||
|
<th>START AT</th> |
||||
|
<td colspan="4">2020-09-15 09:41:24</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>DURATION</th> |
||||
|
<td colspan="4">0.369 seconds</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>PLATFORM</th> |
||||
|
<td>HttpRunner 2.3.0 </td> |
||||
|
<td>CPython 3.8.4 </td> |
||||
|
<td colspan="2">Windows-10-10.0.18362-SP0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>STAT</th> |
||||
|
<th colspan="2">TESTCASES (success/fail)</th> |
||||
|
<th colspan="2">TESTSTEPS (success/fail/error/skip)</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>total (details) =></td> |
||||
|
<td colspan="2">1 (1/0)</td> |
||||
|
<td colspan="2">1 (1/0/0/0)</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
|
||||
|
<h2>Details</h2> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>修改会员</h3> |
||||
|
<table id="suite_1" class="details"> |
||||
|
<tr> |
||||
|
<td>TOTAL: 1</td> |
||||
|
<td>SUCCESS: 1</td> |
||||
|
<td>FAILED: 0</td> |
||||
|
<td>ERROR: 0</td> |
||||
|
<td>SKIPPED: 0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Status</th> |
||||
|
<th colspan="2">Name</th> |
||||
|
<th>Response Time</th> |
||||
|
<th>Detail</th> |
||||
|
</tr> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<tr id="record_1_1"> |
||||
|
<th class="success" style="width:5em;">success</th> |
||||
|
<td colspan="2">修改会员</td> |
||||
|
<td style="text-align:center;width:6em;">355.38 ms</td> |
||||
|
<td class="detail"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<a class="button" href="#popup_log_1_1_1">log-1</a> |
||||
|
<div id="popup_log_1_1_1" class="overlay"> |
||||
|
<div class="popup"> |
||||
|
<h2>Request and Response data</h2> |
||||
|
<a class="close" href="#record_1_1_1">×</a> |
||||
|
|
||||
|
<div class="content"> |
||||
|
<h3>Name: 修改会员</h3> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>Request:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/update/member-expense-config/502180735986307072 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>method</th> |
||||
|
<td> |
||||
|
|
||||
|
POST |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>User-Agent</strong>: python-requests/2.24.0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept-Encoding</strong>: gzip, deflate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept</strong>: */* |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-APP-ID</strong>: 470236309865238555 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: Token a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Length</strong>: 258 |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>body</th> |
||||
|
<td> |
||||
|
|
||||
|
{"bidPrice": 1500, "days": 30, "description": "\u5145\u5c31\u9001\uff0c\u597d\u793c\u7b49\u4f60\u6765~~", "enable": 1, "icon": "http://medou.oss-cn-shenzhen.aliyuncs.com/saas/20200624155949.png", "realPrice": 200, "sellStrategy": "common", "title": "\u5929"} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Response:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>ok</th> |
||||
|
<td> |
||||
|
|
||||
|
True |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/update/member-expense-config/502180735986307072 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>status_code</th> |
||||
|
<td> |
||||
|
|
||||
|
200 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>reason</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>cookies</th> |
||||
|
<td> |
||||
|
|
||||
|
{} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>encoding</th> |
||||
|
<td> |
||||
|
|
||||
|
UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>Server</strong>: nginx |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Date</strong>: Tue, 15 Sep 2020 01:41:24 GMT |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json;charset=UTF-8 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Transfer-Encoding</strong>: chunked |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Content-Type-Options</strong>: nosniff |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-XSS-Protection</strong>: 1; mode=block |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Cache-Control</strong>: no-cache, no-store, max-age=0, must-revalidate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Pragma</strong>: no-cache |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Expires</strong>: 0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Frame-Options</strong>: DENY |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>content_type</th> |
||||
|
<td> |
||||
|
|
||||
|
application/json;charset=UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>json</th> |
||||
|
<td> |
||||
|
|
||||
|
<pre>{'code': 0, 'message': 'successful', 'data': None}</pre> |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<h3>Validators:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>check</th> |
||||
|
<th>comparator</th> |
||||
|
<th>expect value</th> |
||||
|
<th>actual value</th> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
|
||||
|
<td class="passed"> |
||||
|
|
||||
|
status_code |
||||
|
</td> |
||||
|
<td>equals</td> |
||||
|
<td>200</td> |
||||
|
<td>200</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Statistics:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>content_size(bytes)</th> |
||||
|
<td>45</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>response_time(ms)</th> |
||||
|
<td>355.38</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>elapsed(ms)</th> |
||||
|
<td>351.14</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
|
||||
|
</body> |
||||
@ -0,0 +1,492 @@ |
|||||
|
<head> |
||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type" /> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
|
<title> - TestReport</title> |
||||
|
<style> |
||||
|
body { |
||||
|
background-color: #f2f2f2; |
||||
|
color: #333; |
||||
|
margin: 0 auto; |
||||
|
width: 960px; |
||||
|
} |
||||
|
#summary { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
#summary th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
#summary td { |
||||
|
background-color: lightblue; |
||||
|
text-align: center; |
||||
|
padding: 4px 8px; |
||||
|
} |
||||
|
.details { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
.details th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details tr .passed { |
||||
|
background-color: lightgreen; |
||||
|
} |
||||
|
.details tr .failed { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details tr .unchecked { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
.details td { |
||||
|
background-color: lightblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details .detail { |
||||
|
background-color: lightgrey; |
||||
|
font-size: smaller; |
||||
|
padding: 5px 10px; |
||||
|
line-height: 20px; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.details .success { |
||||
|
background-color: greenyellow; |
||||
|
} |
||||
|
.details .error { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details .failure { |
||||
|
background-color: salmon; |
||||
|
} |
||||
|
.details .skipped { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
|
||||
|
.button { |
||||
|
font-size: 1em; |
||||
|
padding: 6px; |
||||
|
width: 4em; |
||||
|
text-align: center; |
||||
|
background-color: #06d85f; |
||||
|
border-radius: 20px/50px; |
||||
|
cursor: pointer; |
||||
|
transition: all 0.3s ease-out; |
||||
|
} |
||||
|
a.button{ |
||||
|
color: gray; |
||||
|
text-decoration: none; |
||||
|
display: inline-block; |
||||
|
} |
||||
|
.button:hover { |
||||
|
background: #2cffbd; |
||||
|
} |
||||
|
|
||||
|
.overlay { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0, 0, 0, 0.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
line-height: 25px; |
||||
|
} |
||||
|
.overlay:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.popup { |
||||
|
margin: 70px auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
border-radius: 10px; |
||||
|
width: 50%; |
||||
|
position: relative; |
||||
|
transition: all 3s ease-in-out; |
||||
|
} |
||||
|
|
||||
|
.popup h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
font-family: Tahoma, Arial, sans-serif; |
||||
|
} |
||||
|
.popup .close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
} |
||||
|
.popup .close:hover { |
||||
|
color: #06d85f; |
||||
|
} |
||||
|
.popup .content { |
||||
|
max-height: 80%; |
||||
|
overflow: auto; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.popup .separator { |
||||
|
color:royalblue |
||||
|
} |
||||
|
|
||||
|
@media screen and (max-width: 700px) { |
||||
|
.box { |
||||
|
width: 70%; |
||||
|
} |
||||
|
.popup { |
||||
|
width: 70%; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
<h1>Test Report: </h1> |
||||
|
|
||||
|
<h2>Summary</h2> |
||||
|
<table id="summary"> |
||||
|
<tr> |
||||
|
<th>START AT</th> |
||||
|
<td colspan="4">2020-09-15 09:48:17</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>DURATION</th> |
||||
|
<td colspan="4">0.235 seconds</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>PLATFORM</th> |
||||
|
<td>HttpRunner 2.3.0 </td> |
||||
|
<td>CPython 3.8.4 </td> |
||||
|
<td colspan="2">Windows-10-10.0.18362-SP0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>STAT</th> |
||||
|
<th colspan="2">TESTCASES (success/fail)</th> |
||||
|
<th colspan="2">TESTSTEPS (success/fail/error/skip)</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>total (details) =></td> |
||||
|
<td colspan="2">1 (1/0)</td> |
||||
|
<td colspan="2">1 (1/0/0/0)</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
|
||||
|
<h2>Details</h2> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>新增会员</h3> |
||||
|
<table id="suite_1" class="details"> |
||||
|
<tr> |
||||
|
<td>TOTAL: 1</td> |
||||
|
<td>SUCCESS: 1</td> |
||||
|
<td>FAILED: 0</td> |
||||
|
<td>ERROR: 0</td> |
||||
|
<td>SKIPPED: 0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Status</th> |
||||
|
<th colspan="2">Name</th> |
||||
|
<th>Response Time</th> |
||||
|
<th>Detail</th> |
||||
|
</tr> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<tr id="record_1_1"> |
||||
|
<th class="success" style="width:5em;">success</th> |
||||
|
<td colspan="2">新增会员</td> |
||||
|
<td style="text-align:center;width:6em;">197.34 ms</td> |
||||
|
<td class="detail"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<a class="button" href="#popup_log_1_1_1">log-1</a> |
||||
|
<div id="popup_log_1_1_1" class="overlay"> |
||||
|
<div class="popup"> |
||||
|
<h2>Request and Response data</h2> |
||||
|
<a class="close" href="#record_1_1_1">×</a> |
||||
|
|
||||
|
<div class="content"> |
||||
|
<h3>Name: 新增会员</h3> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>Request:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/new/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>method</th> |
||||
|
<td> |
||||
|
|
||||
|
POST |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>User-Agent</strong>: python-requests/2.24.0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept-Encoding</strong>: gzip, deflate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept</strong>: */* |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-APP-ID</strong>: 470236309865238555 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: Token a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Length</strong>: 252 |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>body</th> |
||||
|
<td> |
||||
|
|
||||
|
{"bidPrice": 1000, "days": 30, "description": "\u65b0\u4eba\u9996\u5145\u4f18\u60e0\u5927\u5927~~", "enable": 1, "icon": "http://medou.oss-cn-shenzhen.aliyuncs.com/saas/20200624155949.png", "realPrice": 100, "sellStrategy": "common", "title": "\u5929"} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Response:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>ok</th> |
||||
|
<td> |
||||
|
|
||||
|
True |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/new/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>status_code</th> |
||||
|
<td> |
||||
|
|
||||
|
200 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>reason</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>cookies</th> |
||||
|
<td> |
||||
|
|
||||
|
{} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>encoding</th> |
||||
|
<td> |
||||
|
|
||||
|
UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>Server</strong>: nginx |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Date</strong>: Tue, 15 Sep 2020 01:48:17 GMT |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json;charset=UTF-8 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Transfer-Encoding</strong>: chunked |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Content-Type-Options</strong>: nosniff |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-XSS-Protection</strong>: 1; mode=block |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Cache-Control</strong>: no-cache, no-store, max-age=0, must-revalidate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Pragma</strong>: no-cache |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Expires</strong>: 0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Frame-Options</strong>: DENY |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>content_type</th> |
||||
|
<td> |
||||
|
|
||||
|
application/json;charset=UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>json</th> |
||||
|
<td> |
||||
|
|
||||
|
<pre>{'code': 0, 'message': 'successful', 'data': None}</pre> |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<h3>Validators:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>check</th> |
||||
|
<th>comparator</th> |
||||
|
<th>expect value</th> |
||||
|
<th>actual value</th> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
|
||||
|
<td class="passed"> |
||||
|
|
||||
|
status_code |
||||
|
</td> |
||||
|
<td>equals</td> |
||||
|
<td>200</td> |
||||
|
<td>200</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Statistics:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>content_size(bytes)</th> |
||||
|
<td>45</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>response_time(ms)</th> |
||||
|
<td>197.34</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>elapsed(ms)</th> |
||||
|
<td>191.669</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
|
||||
|
</body> |
||||
@ -0,0 +1,516 @@ |
|||||
|
<head> |
||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type" /> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
|
<title> - TestReport</title> |
||||
|
<style> |
||||
|
body { |
||||
|
background-color: #f2f2f2; |
||||
|
color: #333; |
||||
|
margin: 0 auto; |
||||
|
width: 960px; |
||||
|
} |
||||
|
#summary { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
#summary th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
#summary td { |
||||
|
background-color: lightblue; |
||||
|
text-align: center; |
||||
|
padding: 4px 8px; |
||||
|
} |
||||
|
.details { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
.details th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details tr .passed { |
||||
|
background-color: lightgreen; |
||||
|
} |
||||
|
.details tr .failed { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details tr .unchecked { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
.details td { |
||||
|
background-color: lightblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details .detail { |
||||
|
background-color: lightgrey; |
||||
|
font-size: smaller; |
||||
|
padding: 5px 10px; |
||||
|
line-height: 20px; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.details .success { |
||||
|
background-color: greenyellow; |
||||
|
} |
||||
|
.details .error { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details .failure { |
||||
|
background-color: salmon; |
||||
|
} |
||||
|
.details .skipped { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
|
||||
|
.button { |
||||
|
font-size: 1em; |
||||
|
padding: 6px; |
||||
|
width: 4em; |
||||
|
text-align: center; |
||||
|
background-color: #06d85f; |
||||
|
border-radius: 20px/50px; |
||||
|
cursor: pointer; |
||||
|
transition: all 0.3s ease-out; |
||||
|
} |
||||
|
a.button{ |
||||
|
color: gray; |
||||
|
text-decoration: none; |
||||
|
display: inline-block; |
||||
|
} |
||||
|
.button:hover { |
||||
|
background: #2cffbd; |
||||
|
} |
||||
|
|
||||
|
.overlay { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0, 0, 0, 0.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
line-height: 25px; |
||||
|
} |
||||
|
.overlay:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.popup { |
||||
|
margin: 70px auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
border-radius: 10px; |
||||
|
width: 50%; |
||||
|
position: relative; |
||||
|
transition: all 3s ease-in-out; |
||||
|
} |
||||
|
|
||||
|
.popup h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
font-family: Tahoma, Arial, sans-serif; |
||||
|
} |
||||
|
.popup .close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
} |
||||
|
.popup .close:hover { |
||||
|
color: #06d85f; |
||||
|
} |
||||
|
.popup .content { |
||||
|
max-height: 80%; |
||||
|
overflow: auto; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.popup .separator { |
||||
|
color:royalblue |
||||
|
} |
||||
|
|
||||
|
@media screen and (max-width: 700px) { |
||||
|
.box { |
||||
|
width: 70%; |
||||
|
} |
||||
|
.popup { |
||||
|
width: 70%; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
<h1>Test Report: </h1> |
||||
|
|
||||
|
<h2>Summary</h2> |
||||
|
<table id="summary"> |
||||
|
<tr> |
||||
|
<th>START AT</th> |
||||
|
<td colspan="4">2020-09-15 09:49:01</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>DURATION</th> |
||||
|
<td colspan="4">0.116 seconds</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>PLATFORM</th> |
||||
|
<td>HttpRunner 2.3.0 </td> |
||||
|
<td>CPython 3.8.4 </td> |
||||
|
<td colspan="2">Windows-10-10.0.18362-SP0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>STAT</th> |
||||
|
<th colspan="2">TESTCASES (success/fail)</th> |
||||
|
<th colspan="2">TESTSTEPS (success/fail/error/skip)</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>total (details) =></td> |
||||
|
<td colspan="2">1 (0/1)</td> |
||||
|
<td colspan="2">1 (0/1/0/0)</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
|
||||
|
<h2>Details</h2> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>删除会员</h3> |
||||
|
<table id="suite_1" class="details"> |
||||
|
<tr> |
||||
|
<td>TOTAL: 1</td> |
||||
|
<td>SUCCESS: 0</td> |
||||
|
<td>FAILED: 1</td> |
||||
|
<td>ERROR: 0</td> |
||||
|
<td>SKIPPED: 0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Status</th> |
||||
|
<th colspan="2">Name</th> |
||||
|
<th>Response Time</th> |
||||
|
<th>Detail</th> |
||||
|
</tr> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<tr id="record_1_1"> |
||||
|
<th class="failure" style="width:5em;">failure</th> |
||||
|
<td colspan="2">删除会员</td> |
||||
|
<td style="text-align:center;width:6em;">58.55 ms</td> |
||||
|
<td class="detail"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<a class="button" href="#popup_log_1_1_1">log-1</a> |
||||
|
<div id="popup_log_1_1_1" class="overlay"> |
||||
|
<div class="popup"> |
||||
|
<h2>Request and Response data</h2> |
||||
|
<a class="close" href="#record_1_1_1">×</a> |
||||
|
|
||||
|
<div class="content"> |
||||
|
<h3>Name: 删除会员</h3> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>Request:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>method</th> |
||||
|
<td> |
||||
|
|
||||
|
GET |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>User-Agent</strong>: python-requests/2.24.0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept-Encoding</strong>: gzip, deflate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept</strong>: */* |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-APP-ID</strong>: 470236309865238555 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: Token a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Length</strong>: 33 |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>body</th> |
||||
|
<td> |
||||
|
|
||||
|
"idList:[\"503182395336429568\"]" |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Response:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>ok</th> |
||||
|
<td> |
||||
|
|
||||
|
False |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>status_code</th> |
||||
|
<td> |
||||
|
|
||||
|
405 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>reason</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>cookies</th> |
||||
|
<td> |
||||
|
|
||||
|
{} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>encoding</th> |
||||
|
<td> |
||||
|
|
||||
|
UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>Server</strong>: nginx |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Date</strong>: Tue, 15 Sep 2020 01:49:01 GMT |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json;charset=UTF-8 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Transfer-Encoding</strong>: chunked |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Content-Type-Options</strong>: nosniff |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-XSS-Protection</strong>: 1; mode=block |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Cache-Control</strong>: no-cache, no-store, max-age=0, must-revalidate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Pragma</strong>: no-cache |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Expires</strong>: 0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Frame-Options</strong>: DENY |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>content_type</th> |
||||
|
<td> |
||||
|
|
||||
|
application/json;charset=UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>json</th> |
||||
|
<td> |
||||
|
|
||||
|
<pre>{'code': 405, 'message': "Request method 'GET' not supported", 'data': None}</pre> |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<h3>Validators:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>check</th> |
||||
|
<th>comparator</th> |
||||
|
<th>expect value</th> |
||||
|
<th>actual value</th> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
|
||||
|
<td class="failed"> |
||||
|
|
||||
|
status_code |
||||
|
</td> |
||||
|
<td>equals</td> |
||||
|
<td>200</td> |
||||
|
<td>405</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Statistics:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>content_size(bytes)</th> |
||||
|
<td>71</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>response_time(ms)</th> |
||||
|
<td>58.55</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>elapsed(ms)</th> |
||||
|
<td>54.828</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<a class="button" href="#popup_attachment_1_1">traceback</a> |
||||
|
<div id="popup_attachment_1_1" class="overlay"> |
||||
|
<div class="popup"> |
||||
|
<h2>Traceback Message</h2> |
||||
|
<a class="close" href="#record_1_1">×</a> |
||||
|
<div class="content"><pre>Traceback (most recent call last): |
||||
|
File "c:\python\too\lib\site-packages\httprunner\api.py", line 52, in test |
||||
|
test_runner.run_test(test_dict) |
||||
|
httprunner.exceptions.ValidationFailure: |
||||
|
validate: status_code equals 200(int) ==> fail |
||||
|
405(int) equals 200(int) |
||||
|
|
||||
|
During handling of the above exception, another exception occurred: |
||||
|
|
||||
|
Traceback (most recent call last): |
||||
|
File "c:\python\too\lib\site-packages\httprunner\api.py", line 54, in test |
||||
|
self.fail(str(ex)) |
||||
|
AssertionError: |
||||
|
validate: status_code equals 200(int) ==> fail |
||||
|
405(int) equals 200(int) |
||||
|
</pre></div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
|
||||
|
</body> |
||||
@ -0,0 +1,492 @@ |
|||||
|
<head> |
||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type" /> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
|
<title> - TestReport</title> |
||||
|
<style> |
||||
|
body { |
||||
|
background-color: #f2f2f2; |
||||
|
color: #333; |
||||
|
margin: 0 auto; |
||||
|
width: 960px; |
||||
|
} |
||||
|
#summary { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
#summary th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
#summary td { |
||||
|
background-color: lightblue; |
||||
|
text-align: center; |
||||
|
padding: 4px 8px; |
||||
|
} |
||||
|
.details { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
.details th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details tr .passed { |
||||
|
background-color: lightgreen; |
||||
|
} |
||||
|
.details tr .failed { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details tr .unchecked { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
.details td { |
||||
|
background-color: lightblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details .detail { |
||||
|
background-color: lightgrey; |
||||
|
font-size: smaller; |
||||
|
padding: 5px 10px; |
||||
|
line-height: 20px; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.details .success { |
||||
|
background-color: greenyellow; |
||||
|
} |
||||
|
.details .error { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details .failure { |
||||
|
background-color: salmon; |
||||
|
} |
||||
|
.details .skipped { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
|
||||
|
.button { |
||||
|
font-size: 1em; |
||||
|
padding: 6px; |
||||
|
width: 4em; |
||||
|
text-align: center; |
||||
|
background-color: #06d85f; |
||||
|
border-radius: 20px/50px; |
||||
|
cursor: pointer; |
||||
|
transition: all 0.3s ease-out; |
||||
|
} |
||||
|
a.button{ |
||||
|
color: gray; |
||||
|
text-decoration: none; |
||||
|
display: inline-block; |
||||
|
} |
||||
|
.button:hover { |
||||
|
background: #2cffbd; |
||||
|
} |
||||
|
|
||||
|
.overlay { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0, 0, 0, 0.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
line-height: 25px; |
||||
|
} |
||||
|
.overlay:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.popup { |
||||
|
margin: 70px auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
border-radius: 10px; |
||||
|
width: 50%; |
||||
|
position: relative; |
||||
|
transition: all 3s ease-in-out; |
||||
|
} |
||||
|
|
||||
|
.popup h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
font-family: Tahoma, Arial, sans-serif; |
||||
|
} |
||||
|
.popup .close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
} |
||||
|
.popup .close:hover { |
||||
|
color: #06d85f; |
||||
|
} |
||||
|
.popup .content { |
||||
|
max-height: 80%; |
||||
|
overflow: auto; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.popup .separator { |
||||
|
color:royalblue |
||||
|
} |
||||
|
|
||||
|
@media screen and (max-width: 700px) { |
||||
|
.box { |
||||
|
width: 70%; |
||||
|
} |
||||
|
.popup { |
||||
|
width: 70%; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
<h1>Test Report: </h1> |
||||
|
|
||||
|
<h2>Summary</h2> |
||||
|
<table id="summary"> |
||||
|
<tr> |
||||
|
<th>START AT</th> |
||||
|
<td colspan="4">2020-09-15 09:49:25</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>DURATION</th> |
||||
|
<td colspan="4">0.887 seconds</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>PLATFORM</th> |
||||
|
<td>HttpRunner 2.3.0 </td> |
||||
|
<td>CPython 3.8.4 </td> |
||||
|
<td colspan="2">Windows-10-10.0.18362-SP0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>STAT</th> |
||||
|
<th colspan="2">TESTCASES (success/fail)</th> |
||||
|
<th colspan="2">TESTSTEPS (success/fail/error/skip)</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>total (details) =></td> |
||||
|
<td colspan="2">1 (1/0)</td> |
||||
|
<td colspan="2">1 (1/0/0/0)</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
|
||||
|
<h2>Details</h2> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>删除会员</h3> |
||||
|
<table id="suite_1" class="details"> |
||||
|
<tr> |
||||
|
<td>TOTAL: 1</td> |
||||
|
<td>SUCCESS: 1</td> |
||||
|
<td>FAILED: 0</td> |
||||
|
<td>ERROR: 0</td> |
||||
|
<td>SKIPPED: 0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Status</th> |
||||
|
<th colspan="2">Name</th> |
||||
|
<th>Response Time</th> |
||||
|
<th>Detail</th> |
||||
|
</tr> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<tr id="record_1_1"> |
||||
|
<th class="success" style="width:5em;">success</th> |
||||
|
<td colspan="2">删除会员</td> |
||||
|
<td style="text-align:center;width:6em;">854.67 ms</td> |
||||
|
<td class="detail"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<a class="button" href="#popup_log_1_1_1">log-1</a> |
||||
|
<div id="popup_log_1_1_1" class="overlay"> |
||||
|
<div class="popup"> |
||||
|
<h2>Request and Response data</h2> |
||||
|
<a class="close" href="#record_1_1_1">×</a> |
||||
|
|
||||
|
<div class="content"> |
||||
|
<h3>Name: 删除会员</h3> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>Request:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>method</th> |
||||
|
<td> |
||||
|
|
||||
|
POST |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>User-Agent</strong>: python-requests/2.24.0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept-Encoding</strong>: gzip, deflate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept</strong>: */* |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-APP-ID</strong>: 470236309865238555 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: Token a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Length</strong>: 33 |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>body</th> |
||||
|
<td> |
||||
|
|
||||
|
"idList:[\"503182395336429568\"]" |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Response:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>ok</th> |
||||
|
<td> |
||||
|
|
||||
|
True |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>status_code</th> |
||||
|
<td> |
||||
|
|
||||
|
200 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>reason</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>cookies</th> |
||||
|
<td> |
||||
|
|
||||
|
{} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>encoding</th> |
||||
|
<td> |
||||
|
|
||||
|
UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>Server</strong>: nginx |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Date</strong>: Tue, 15 Sep 2020 01:49:25 GMT |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json;charset=UTF-8 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Transfer-Encoding</strong>: chunked |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Content-Type-Options</strong>: nosniff |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-XSS-Protection</strong>: 1; mode=block |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Cache-Control</strong>: no-cache, no-store, max-age=0, must-revalidate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Pragma</strong>: no-cache |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Expires</strong>: 0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Frame-Options</strong>: DENY |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>content_type</th> |
||||
|
<td> |
||||
|
|
||||
|
application/json;charset=UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>json</th> |
||||
|
<td> |
||||
|
|
||||
|
<pre>{'timestamp': 1600134565154, 'status': 400, 'error': 'Bad Request', 'message': 'JSON parse error: Cannot construct instance of `com.qniao.trade.admin.dto.DeleteMemberExpenseConfigDto` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value (\'idList:["503182395336429568"]\'); nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of `com.qniao.trade.admin.dto.DeleteMemberExpenseConfigDto` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value (\'idList:["503182395336429568"]\')\n at [Source: (PushbackInputStream); line: 1, column: 1]', 'path': '/recycle-service/admin/member/delete-batch/member-expense-config', 'code': 400}</pre> |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<h3>Validators:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>check</th> |
||||
|
<th>comparator</th> |
||||
|
<th>expect value</th> |
||||
|
<th>actual value</th> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
|
||||
|
<td class="passed"> |
||||
|
|
||||
|
status_code |
||||
|
</td> |
||||
|
<td>equals</td> |
||||
|
<td>200</td> |
||||
|
<td>200</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Statistics:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>content_size(bytes)</th> |
||||
|
<td>798</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>response_time(ms)</th> |
||||
|
<td>854.67</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>elapsed(ms)</th> |
||||
|
<td>849.353</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
|
||||
|
</body> |
||||
@ -0,0 +1,492 @@ |
|||||
|
<head> |
||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type" /> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
|
<title> - TestReport</title> |
||||
|
<style> |
||||
|
body { |
||||
|
background-color: #f2f2f2; |
||||
|
color: #333; |
||||
|
margin: 0 auto; |
||||
|
width: 960px; |
||||
|
} |
||||
|
#summary { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
#summary th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
#summary td { |
||||
|
background-color: lightblue; |
||||
|
text-align: center; |
||||
|
padding: 4px 8px; |
||||
|
} |
||||
|
.details { |
||||
|
width: 960px; |
||||
|
margin-bottom: 20px; |
||||
|
} |
||||
|
.details th { |
||||
|
background-color: skyblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details tr .passed { |
||||
|
background-color: lightgreen; |
||||
|
} |
||||
|
.details tr .failed { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details tr .unchecked { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
.details td { |
||||
|
background-color: lightblue; |
||||
|
padding: 5px 12px; |
||||
|
} |
||||
|
.details .detail { |
||||
|
background-color: lightgrey; |
||||
|
font-size: smaller; |
||||
|
padding: 5px 10px; |
||||
|
line-height: 20px; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.details .success { |
||||
|
background-color: greenyellow; |
||||
|
} |
||||
|
.details .error { |
||||
|
background-color: red; |
||||
|
} |
||||
|
.details .failure { |
||||
|
background-color: salmon; |
||||
|
} |
||||
|
.details .skipped { |
||||
|
background-color: gray; |
||||
|
} |
||||
|
|
||||
|
.button { |
||||
|
font-size: 1em; |
||||
|
padding: 6px; |
||||
|
width: 4em; |
||||
|
text-align: center; |
||||
|
background-color: #06d85f; |
||||
|
border-radius: 20px/50px; |
||||
|
cursor: pointer; |
||||
|
transition: all 0.3s ease-out; |
||||
|
} |
||||
|
a.button{ |
||||
|
color: gray; |
||||
|
text-decoration: none; |
||||
|
display: inline-block; |
||||
|
} |
||||
|
.button:hover { |
||||
|
background: #2cffbd; |
||||
|
} |
||||
|
|
||||
|
.overlay { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0, 0, 0, 0.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
line-height: 25px; |
||||
|
} |
||||
|
.overlay:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.popup { |
||||
|
margin: 70px auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
border-radius: 10px; |
||||
|
width: 50%; |
||||
|
position: relative; |
||||
|
transition: all 3s ease-in-out; |
||||
|
} |
||||
|
|
||||
|
.popup h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
font-family: Tahoma, Arial, sans-serif; |
||||
|
} |
||||
|
.popup .close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
} |
||||
|
.popup .close:hover { |
||||
|
color: #06d85f; |
||||
|
} |
||||
|
.popup .content { |
||||
|
max-height: 80%; |
||||
|
overflow: auto; |
||||
|
text-align: left; |
||||
|
} |
||||
|
.popup .separator { |
||||
|
color:royalblue |
||||
|
} |
||||
|
|
||||
|
@media screen and (max-width: 700px) { |
||||
|
.box { |
||||
|
width: 70%; |
||||
|
} |
||||
|
.popup { |
||||
|
width: 70%; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
</style> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
<h1>Test Report: </h1> |
||||
|
|
||||
|
<h2>Summary</h2> |
||||
|
<table id="summary"> |
||||
|
<tr> |
||||
|
<th>START AT</th> |
||||
|
<td colspan="4">2020-09-15 09:50:50</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>DURATION</th> |
||||
|
<td colspan="4">0.281 seconds</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>PLATFORM</th> |
||||
|
<td>HttpRunner 2.3.0 </td> |
||||
|
<td>CPython 3.8.4 </td> |
||||
|
<td colspan="2">Windows-10-10.0.18362-SP0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>STAT</th> |
||||
|
<th colspan="2">TESTCASES (success/fail)</th> |
||||
|
<th colspan="2">TESTSTEPS (success/fail/error/skip)</th> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>total (details) =></td> |
||||
|
<td colspan="2">1 (1/0)</td> |
||||
|
<td colspan="2">1 (1/0/0/0)</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
|
||||
|
<h2>Details</h2> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>删除会员</h3> |
||||
|
<table id="suite_1" class="details"> |
||||
|
<tr> |
||||
|
<td>TOTAL: 1</td> |
||||
|
<td>SUCCESS: 1</td> |
||||
|
<td>FAILED: 0</td> |
||||
|
<td>ERROR: 0</td> |
||||
|
<td>SKIPPED: 0</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>Status</th> |
||||
|
<th colspan="2">Name</th> |
||||
|
<th>Response Time</th> |
||||
|
<th>Detail</th> |
||||
|
</tr> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<tr id="record_1_1"> |
||||
|
<th class="success" style="width:5em;">success</th> |
||||
|
<td colspan="2">删除会员</td> |
||||
|
<td style="text-align:center;width:6em;">255.39 ms</td> |
||||
|
<td class="detail"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<a class="button" href="#popup_log_1_1_1">log-1</a> |
||||
|
<div id="popup_log_1_1_1" class="overlay"> |
||||
|
<div class="popup"> |
||||
|
<h2>Request and Response data</h2> |
||||
|
<a class="close" href="#record_1_1_1">×</a> |
||||
|
|
||||
|
<div class="content"> |
||||
|
<h3>Name: 删除会员</h3> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
<h3>Request:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>method</th> |
||||
|
<td> |
||||
|
|
||||
|
POST |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>User-Agent</strong>: python-requests/2.24.0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept-Encoding</strong>: gzip, deflate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Accept</strong>: */* |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-APP-ID</strong>: 470236309865238555 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: Token a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Length</strong>: 34 |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>body</th> |
||||
|
<td> |
||||
|
|
||||
|
{"idList": ["503182395336429568"]} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Response:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
|
||||
|
<tr> |
||||
|
<th>ok</th> |
||||
|
<td> |
||||
|
|
||||
|
True |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>url</th> |
||||
|
<td> |
||||
|
|
||||
|
http://api-admin-test.qniao.cn/recycle-service/admin/member/delete-batch/member-expense-config |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>status_code</th> |
||||
|
<td> |
||||
|
|
||||
|
200 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>reason</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>cookies</th> |
||||
|
<td> |
||||
|
|
||||
|
{} |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>encoding</th> |
||||
|
<td> |
||||
|
|
||||
|
UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>headers</th> |
||||
|
<td> |
||||
|
|
||||
|
|
||||
|
<div> |
||||
|
<strong>Server</strong>: nginx |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Date</strong>: Tue, 15 Sep 2020 01:50:50 GMT |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Content-Type</strong>: application/json;charset=UTF-8 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Transfer-Encoding</strong>: chunked |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Connection</strong>: keep-alive |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Authorization</strong>: a4289fbdfb3422e76232906b1ccdffb7 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Content-Type-Options</strong>: nosniff |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-XSS-Protection</strong>: 1; mode=block |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Cache-Control</strong>: no-cache, no-store, max-age=0, must-revalidate |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Pragma</strong>: no-cache |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>Expires</strong>: 0 |
||||
|
</div> |
||||
|
|
||||
|
<div> |
||||
|
<strong>X-Frame-Options</strong>: DENY |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>content_type</th> |
||||
|
<td> |
||||
|
|
||||
|
application/json;charset=UTF-8 |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
<th>json</th> |
||||
|
<td> |
||||
|
|
||||
|
<pre>{'code': 0, 'message': 'successful', 'data': None}</pre> |
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<h3>Validators:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>check</th> |
||||
|
<th>comparator</th> |
||||
|
<th>expect value</th> |
||||
|
<th>actual value</th> |
||||
|
</tr> |
||||
|
|
||||
|
<tr> |
||||
|
|
||||
|
<td class="passed"> |
||||
|
|
||||
|
status_code |
||||
|
</td> |
||||
|
<td>equals</td> |
||||
|
<td>200</td> |
||||
|
<td>200</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
<h3>Statistics:</h3> |
||||
|
<div style="overflow: auto"> |
||||
|
<table> |
||||
|
<tr> |
||||
|
<th>content_size(bytes)</th> |
||||
|
<td>45</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>response_time(ms)</th> |
||||
|
<td>255.39</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>elapsed(ms)</th> |
||||
|
<td>252.743</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
</td> |
||||
|
</tr> |
||||
|
|
||||
|
</table> |
||||
|
|
||||
|
</body> |
||||
Write
Preview
Loading…
Cancel
Save