35 lines
2.5 KiB
YAML
35 lines
2.5 KiB
YAML
api_info: 测试 demo 接口
|
||
url: {
|
||
"pro": "https://ditu.amap.com/service/regeo",
|
||
"uat": "https://ditu.amap.com/service/regeo"
|
||
}
|
||
method: get
|
||
case_datas: [
|
||
{ "case_title": "接口测试用例demo1","case_data": '{ "longitude": "121.04925573429551", "latitude": "31.315590522490712" }' ,
|
||
check: [
|
||
{ "json": "$.status" },
|
||
{ "sql": [ 'MYSQl_NAME_DEMO',"select id,BIZ_TYPE,TMC_ID from tem_oms_uat.ota_order where id = '106828548100480'" ] },
|
||
{ "exist": "data" },
|
||
{ "not_exist": "message" } ],
|
||
result: [ "1",[ 106828548100480,10,3 ],"True","False" ],env: pro },
|
||
{ "case_title": "接口测试用例demo2","case_data": '{ "code": 0 }' ,check: [ { "json": '$.data' } ],result: [ "参数错误" ],env: pro },
|
||
{ "case_title": "接口测试用例demo3","case_data": '{ "code": "#now#" }',check: [ 1,2 ],result: [ 2,1 ],env: pro },
|
||
|
||
]
|
||
|
||
#api_info作为接口的描述信息没有任何实际意义
|
||
#url 填写 pro和 uat的url地址 pro是线上环境 uat是测试环境 pro 和 uat 是关键字不可动
|
||
#method填写请求方式,get post
|
||
#case_datas填写测试用例,用例格式为json数组,每个用例为一个json对象,用例中包含case_title 用例标题,case_data 用例数据,check 用例断言,result 用例结果,env 环境
|
||
#case_title 用例标题
|
||
#case_data 用例数据
|
||
# 可以用 #关键字# 表示需要执行的函数然后在util/auto_test/api_test/custom_parameters.py 文件中定义函数,在解析用例的时候会执行对应函数获取函数返回结果去替换指定的参数,可以减少对测试用例脚本的修改
|
||
#check 用例断言
|
||
#check 断言格式为json数组,每个断言为一个 dict 对象,断言中包含json sql exist not_exist 四种关键字
|
||
# json 断言格式为json路径,写法为 { "json": '$.data' }
|
||
# sql 断言格式为sql语句, 写法为 { "sql": [ 'MYSQl_NAME_DEMO',"select id,BIZ_TYPE,TMC_ID from tem_oms_uat.ota_order where id = '106828548100480'" ] } 。
|
||
# 需要断言的字段为id,BIZ_TYPE,TMC_ID 3个内容所以result中对应的断言数据为[ 106828548100480,10,3 ]要用列表表达
|
||
# exist 断言格式为json中是否包含key,写法为 { "exist": "data" }
|
||
# not_exist 断言格式为json中是否不包含key,写法为 { "not_exist": "message" }
|
||
#result 用例结果 数量要和断言数量一致,并且前后一一对应
|
||
#env 环境 pro uat 本地环境根据 config.yaml 的 global 配置读取用例,linux 上就读取 jenkins 的配置 |