電子商務(wù)網(wǎng)站建設(shè)實(shí)訓(xùn)展示流量網(wǎng)站
Jmeter常用的斷言主要有,JSON斷言和響應(yīng)斷言這兩種方式。
斷言主要就是幫助幫助人工進(jìn)行快速接口信息驗證避免繁雜的重復(fù)的人工去驗證數(shù)據(jù)
- 第一種響應(yīng)斷言
- Apply to:表示應(yīng)用范圍
- 測試字段:針對響應(yīng)數(shù)據(jù)進(jìn)行不同的匹配
- 響應(yīng)文本
- 響應(yīng)代碼
- 響應(yīng)信息
- 響應(yīng)頭
- 請求頭
- URL樣本
- 文本
- 忽略狀態(tài)
- 請求數(shù)據(jù)
- 模式匹配規(guī)則
- 生成斷言結(jié)果
- 第二種JSON斷言
下面我們就來添加斷言
第一種響應(yīng)斷言
添加一個線程組、再添加一個HTTP請求
本次測試數(shù)據(jù)來自航空時刻表的接口需要可以自行使用
航空城市
通過斷言就可以判斷事務(wù)是否匹配成功,以及是否響應(yīng)成功,如果是不成功就是回報紅色錯誤,出現(xiàn)紅色錯誤就代表失敗,這樣我們就能夠去通過csv去批量驗證接口是否能夠正常的使用。
響應(yīng)斷言的名稱和注釋,這兩個都可以隨意寫
Apply to:表示應(yīng)用范圍
Main sample and sub-samples 表示匹配范圍包括父取樣器及子取樣器
Main sample only 僅匹配父取樣器
Sub-samples only 僅匹配子取樣器
測試字段:針對響應(yīng)數(shù)據(jù)進(jìn)行不同的匹配
需要根據(jù)察看結(jié)果樹里面有的信息進(jìn)行相應(yīng)的斷言才能夠成功響應(yīng)
響應(yīng)文本
響應(yīng)服務(wù)器返回的文本內(nèi)容
響應(yīng)代碼
匹配響應(yīng)的狀態(tài)碼,比如100、200、300、400、500這些
響應(yīng)信息
匹配響應(yīng)信息,如果匹配成功就返回成功、或者通過這些
響應(yīng)頭
匹配響應(yīng)頭中的頭信息
常用的響應(yīng)頭如下:
Accept-Patch
指定服務(wù)器所支持的文檔補(bǔ)丁格式
Accept-Ranges
服務(wù)器所支持的內(nèi)容范圍
Content-Disposition
對已知MIME類型資源的描述,瀏覽器可以根據(jù)這個響應(yīng)頭決定是對返回資源的動作,如:將其下載或是打開。
Content-Encoding
響應(yīng)資源所使用的編碼類型。
Content-Language
響就內(nèi)容所使用的語言
Content-Length
響應(yīng)消息體的長度,用8進(jìn)制字節(jié)表示
Content-Type
當(dāng)前內(nèi)容的MIME類型
Date
此條消息被發(fā)送時的日期和時間(以RFC 7231中定義的"HTTP日期"格式來表示)
Expires
指定一個日期/時間,超過該時間則認(rèn)為此回應(yīng)已經(jīng)過期
Server
服務(wù)器的名稱
請求頭
匹配請求中的頭信息
服務(wù)器要使用的附加信息,比較重要的信息有 Cookie 、Referer、User-Agent
Accept
???????Accept-Language
???????Accept-Encoding
???????Host
???????Cookie
???????Referer
???????User-Agent
???????Content-Type
URL樣本
匹配URL鏈接
文本
對文檔內(nèi)容進(jìn)行匹配
忽略狀態(tài)
表示一個請求中擁有多個響應(yīng),第一個響應(yīng)成功就進(jìn)行下一個判定,最后一個判定成功則表示通過
請求數(shù)據(jù)
匹配請求數(shù)據(jù)的信息
具體含義可參考這篇文章:
請求頭和響應(yīng)頭
模式匹配規(guī)則
包括:相應(yīng)內(nèi)容匹配成功就代表響應(yīng)成功,支持正則表達(dá)式
匹配:與響應(yīng)內(nèi)容完全匹配則代表成功,支持正則表達(dá)式
相等:與響應(yīng)內(nèi)容相等才代表成功,支持字符串不支持正則
字符串:字符串與相應(yīng)內(nèi)容匹配,支持字符串
否:降低匹配敏感度,只要其中有一個即可表示匹配成功
或者:存在多個內(nèi)容,只要一種一個成功即表示通過
生成斷言結(jié)果
第二種JSON斷言
JSON斷言可以針對返回值為JSON格式進(jìn)行一個判斷
像這種數(shù)據(jù)類型就是JSON格式
Assert Json path exists提取斷言內(nèi)容這里就用簡單的正則提取即可,也可以用正則提取之后加一個全局變量賦予給json斷言中也可以使用
Match as regular expression勾選后表示支持正則表達(dá)式
Expected Value斷言內(nèi)容
Except null斷言內(nèi)容為空
Invert assertion(wiil fail if above condition met)斷言內(nèi)容取反,如果結(jié)果為真就顯示假,假就顯示為真
比如我針對外層的拿code就用$.code這里提取即可,
如果我要獲取data中的數(shù)據(jù),可以 $.data.
如果察看結(jié)果樹出現(xiàn)中文亂碼可以看這篇文章:
Jmeter運(yùn)行后,查看結(jié)果樹中的響應(yīng)數(shù)據(jù)出現(xiàn)中文亂碼