parameters:
monitorIds-startTime-endTime-alarmTypes-status_code-code-message: ${P(data/count.csv)}
AssertionError:
validate: status_code equals 200)(str) ==> fail
200(int) equals 200)(str)
可以testsuite中使用直接傳參,可正常比較
parameters:
monitorIds-startTime-endTime-alarmTypes-status_code-code-message:
- [ca8596fe-210d-448f-ae50-c60fecfaec03,20200328,20200328,"3,11",200,10000,'OK']
testsuite代碼:
config:
name: "paas_cloud_testsuite"
variables:
device_sn:
base_url: "http://113.204.5.58"
testcases:
-
name: alarm/count/type True
parameters:
monitorIds-startTime-endTime-alarmTypes-status_code-code-message:
- [ca8596fe-210d-448f-ae50-c60fecfaec03,20200328,20200328,"3,11",200,10000,OK]
- ["ca8596fe-210d-448f-ae50-c60fecfaec03",20200328,20200328,"3,13,14,29,30,157,158,0,1,2,18,19,2011,2012,20,2111,2112,21,2211,2212,22,23,15,148,149,164,24,25,26,27,28,31,4,5,6,7,8,9,10,11,12,16,17,651,652,653,661,662,663,14303,14301,14300,14302,14304,14305,14306,681,682,701,1321,702,683,67,124,12411,14411,125,126,1271,1272,130,128,131,129,77,75,147,76,7211,7212,7311,7312,11911,11912,151,150,82,7702,7703,79,81,32,118,11511,11512,11611,11612,123,1111,1112,113,114,107,106,104,105,108,109,18712,18715,18710,18716,18717,18714,18711,18713",200,10000,OK]
- [\,\,\,\,400,20000,格式錯誤]
- [ca8596fe-210d-448f-ae50-c60fecfaec03,202003,202003,X,400,20000,格式錯誤]
# parameters:
# monitorIds-startTime-endTime-alarmTypes-status_code-code-message: ${P(data/count.csv)}
testcase: testcases\paas_cloud\alarm_count_type.yml
# validate:
# - eq: ["status_code",200]
# - eq: ["content.code",10000]
# - eq: ["content.message",'OK']
testcase代碼:
config:
name: "/api/alarm/count/type"
base_url: "http://113.204.5.58"
# 單個監控對象,多個監控對象
# 1天以上,不跨天一整天,幾個小時,爲空
# 報警類型:1個報警、多個報警,全部報警
teststeps:
-
name: /api/alarm/count/type
variables:
monitorIds: "ca8596fe-210d-448f-ae50-c60fecfaec03"
startTime: 20200328
endTime: 20200328
alarmTypes: "3,13,14,29,30,157,158,0,1,2,18,19,2011,2012,20,2111,2112,21,2211,2212,22,23,15,148,149,164,24,25,26,27,28,31,4,5,6,7,8,9,10,11,12,16,17,651,652,653,661,662,663,14303,14301,14300,14302,14304,14305,14306,681,682,701,1321,702,683,67,124,12411,14411,125,126,1271,1272,130,128,131,129,77,75,147,76,7211,7212,7311,7312,11911,11912,151,150,82,7702,7703,79,81,32,118,11511,11512,11611,11612,123,1111,1112,113,114,107,106,104,105,108,109,18712,18715,18710,18716,18717,18714,18711,18713"
status_code: 200
code: 10000
message: 'OK'
api: api\paas_cloud\alarm_count_type.yml
validate:
- eq: ["status_code",$status_code]
- eq: ["content.code",$code]
- contains: ["content.message",$message]
api代碼:
name: /api/alarm/count/type
variables:
base_url: ${ENV(URL)}
message: 'OK'
monitorIds: "ca8596fe-210d-448f-ae50-c60fecfaec03"
startTime: 20200328
endTime: 20200328
alarmTypes: "3,13,14,29,30,157,158,0,1,2,18,19,2011,2012,20,2111,2112,21,2211,2212,22,23,15,148,149,164,24,25,26,27,28,31,4,5,6,7,8,9,10,11,12,16,17,651,652,653,661,662,663,14303,14301,14300,14302,14304,14305,14306,681,682,701,1321,702,683,67,124,12411,14411,125,126,1271,1272,130,128,131,129,77,75,147,76,7211,7212,7311,7312,11911,11912,151,150,82,7702,7703,79,81,32,118,11511,11512,11611,11612,123,1111,1112,113,114,107,106,104,105,108,109,18712,18715,18710,18716,18717,18714,18711,18713"
request:
headers:
'cache-control': "no-cache"
params:
monitorIds: ${monitorIds}
startTime: "${startTime}000000"
endTime: "${endTime}235959"
alarmTypes: ${alarmTypes}
method: 'POST'
url: '${base_url}/api/alarm/count/type'
validate:
- eq: ["status_code",200]
- eq: ["content.code",10000]
- contains: ["content.message",$message]
改源碼設想:通過判斷字符串是否是純數字,是純數據則轉換爲int
str1="999" if(str1.isdecimal()): str1=int(str1)
直接將比較關鍵字- eq 改爲- str_eq可解決此問題