Jmeter beanshell 斷言


Jmeter 的自帶斷言方式有很多種,以下就常用的兩種斷言方式簡單介紹一下:

第一種:響應斷言(Response Assertion),這種斷言應該是新手比較常用的一種,畢竟操作簡單。但這種斷言形式,在做接口自動化時,就沒有那么方便,不能打印自己想打印的內容。

具體操作如下:

1、選擇取樣器->Add->Assertion->Response Assertion 進入到斷言設置頁面。

2、在Response 面板上可以根據具體的需求進行設置

3、實際運行結果

 

 

第二種:Beanshell Assertion 斷言,不管是在性能測試、單接口測試、接口自動化測試上都及利於對斷言結果進行分析的。

具體操作下:

1、選擇取樣器->Add->Assertion->Beanshell Assertion 進入到beanshell 頁面。

2、實際運行結果

 

 

 

//獲取響應內容
String response_value = prev.getResponseDataAsString();
//獲取響應碼
response_code = prev.getResponseCode();
//斷言內容,如果是做接口自動化時,可以直接讀取csv文件的斷言內容
//這里只是單接口調試而已,因此,就自定義兩個斷言的變量來存放斷言內容。
String assert1 = "\"status\":\"false\"";
String assert2="\"message\":\"購物車添加成功!\"";

//Failure是jmeter內置的變量,為false時,表示斷言成功,不會拋出錯誤,為true時,表示斷言失敗;
//FailureMessage是jmeter內置的變量,用來打印斷言失敗后,需要顯示的內容。

if(response_value.contains(assert1) && response_value.contains(assert2)){
	Failure = false;
	return;
}else{
	Failure=true;
	String massage = "\n\t\t斷言失敗!" +"\n" + "斷言1:"+assert1 +"\t斷言2:"+ assert2 +"\n\n響應信息如下:\n";
	FailureMessage=massage+"響應碼為:"+ response_code+"\n"+"響應內容為:"+response_value;
	return ;
}

當然Beanshell Assertion 斷言方式還有做其他的操作,暫時不在此進行介紹!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM