1. 程式人生 > 其它 >MeterSphere使用教程(1)-斷言規則(抄自:https://blog.csdn.net/jierxiaoyao/article/details/115282521)

MeterSphere使用教程(1)-斷言規則(抄自:https://blog.csdn.net/jierxiaoyao/article/details/115282521)

目錄

一、文字

二、正則

三、JsonPath

四、XPath

五、響應時間

六、指令碼

斷言規則用於判斷請求結果是否符合預期,MeterSphere提供瞭如下6種斷言方式:

一、文字
根據響應文字斷言,可對 ResponseCode、ResponseHeaders、ResponseData 三部分資料進行斷言。

選擇要斷言的響應部分,可對所選響應資訊中的文字進行條件判斷,如是否包含某個字元,是等於某個字元。

對響應狀態碼驗證需勾選“忽略狀態”,表示不管狀態碼本身代表的含義是否為通過,只要和斷言一致就算通過,不一致就算不通過。如:

判斷響應程式碼為400表示通過:選擇ResponseCode,條件選擇 “等於”,值填寫 “400”,勾選最右側的 “忽略狀態” 。則響應狀態碼為400時,本條斷言通過;不是400時,本條斷言失敗。
判斷響應頭資訊中有Cookie表示通過:選擇ResponseHeaders,條件選擇 “包含”,值填寫 “Cookie"。則ResponseHeaders裡有 “Cookie” 字串時,本條斷言通過;不包含“Cookie” 字串時,本條斷言失敗。
判斷響應體中沒有 “登陸成功” 資訊表示通過:選擇ResponseData,條件選擇 “不包含”,值填寫 “登陸成功”。則ResponseData裡沒有 “登陸成功” 字串時,本條斷言通過;有 “登陸成功” 字串時,本條斷言失敗。


二、正則
同樣是根據響應文字斷言,與文字斷言的區別是適用於更復雜的斷言場景,可使用正則表示式對 ResponseCode、ResponseHeaders、ResponseData 三部分資料進行斷言。

文字斷言中的三個例子,使用正則斷言的寫法如下:

判斷響應程式碼為400表示通過:選擇ResponseCode,填寫Perl型正則表示式 “^400$”,勾選最右側的 “忽略狀態” 。則響應狀態碼為400時,本條斷言通過;不是400時,本條斷言失敗。
判斷響應頭資訊中有Cookie表示通過:選擇ResponseHeaders,填寫Perl型正則表示式 “.*Cookie.*"。則ResponseHeaders裡有 “Cookie” 字串時,本條斷言通過;不包含“Cookie” 字串時,本條斷言失敗。
判斷響應體中沒有 “登陸成功” 資訊表示通過:選擇ResponseData,填寫Perl型正則表示式 “(?s)^((?!登陸成功).)*$”。則ResponseData裡沒有 “登陸成功” 字串時,本條斷言通過;有 “登陸成功” 字串時,本條斷言失敗。


三、JsonPath
JsonPath適用於返回值為json字串的請求,可根據json路徑對響應體中的對應的值進行判斷。

填寫JsonPath後,可選擇對期望值進行 正則匹配、包含、不包含、等於、不等於 5種判斷條件。

選擇正則表示式即根據正則表示式判斷JsonPath值是否符合預期,選擇包含、不包含、等於、不等於則正常判斷JsonPath值是否符合預期。

四、XPath
XPath適用於返回值為xml格式的請求,可根據XPath路徑對響應體中的對應的值進行判斷。選擇XPath後,填寫xpath表示式,如

判斷響應中某節點的值為 “19.99” 表示通過:選擇XPath,填寫XPath表示式 “/根節點/子節點/子節點=“19.99”” 或 “/根節點/子節點/子節點[text()='19.99']“。則對應節點的值等於 “19.99” 時,本條斷言通過;否則本條斷言失敗。
判斷響應中某節點包含 “登陸成功” 資訊表示通過:選擇XPath,填寫XPath表示式 “/根節點/子節點/子節點[contains(text(),'登陸成功')]”。則對應節點有 “登陸成功” 字串時,本條斷言通過;否則本條斷言失敗。


五、響應時間
用於對響應時間進行斷言,響應時間在xxx毫秒內即斷言通過,超時則斷言失敗。

六、指令碼
對於複雜對斷言,可用指令碼編寫斷言規則,選擇指令碼,點選編輯可編輯斷言指令碼。

指令碼編輯頁面第一行的變數,可填寫要斷言的變數名和預期值,自動生成斷言指令碼。


————————————————
版權宣告:本文為CSDN博主「容思居然被佔用了!」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/jierxiaoyao/article/details/115282521