import com.alibaba.fastjson.*;
//獲取上一個請求的返回
if ((prev.getResponseCode() != null) && (prev.getResponseCode().equals("200") == true)) {
String resp = prev.getResponseDataAsString();
JSONObject json = JSON.parseObject(resp);
int status = json.getIntValue("status");
//判斷返回值是否和預期一致
if (status != 0) {
//把斷言失敗置為真,即用例失敗,並在結果樹中顯示FailureMessage
Failure = true;
FailureMessage = "事件校驗失敗,click模式register.php請求返回錯誤";
}
}else{
log.error("click驗證--fullpage--get接口請求失敗:" + prev.getResponseDataAsString());
Failure = true;
FailureMessage = "事件校驗失敗,click模式register.php請求失敗";
}
import org.json.*;
//需要導入fastjson-1.2.49.jar至JMeter/lib目錄下,解析json
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
//獲取返回結果Base64加密
String json_res = prev.getResponseDataAsString();
//對加密字符串進行Base64解密
String json_Base64 =“${__base64Decode(json_res,)}”;
//獲取返回json報文中的指定字段key值,本實例為獲取aa的值
//String json_key =JSON.parseObject(json_Base64).getString("aa");
//判斷返回的結果是否包含aa,如果包含則AAjson為true,不包含則為false
boolean AAjson = json_Base64.contains("aa");
//AAjson為false時,將請求置為失敗
if(! AAjson){
//BeanShell Assertion設置失敗請求如下:
//Failure =true;
//JSR223 Assertion設置失敗請求如下:
AssertionResult.setFailure(true)
}
注:如果返回數據中有換行,空格導致報錯,可以使用以下方法進行替換
方法1:替換1種方法
String string = “1 1 1 1”.replaceAll(" ", "");//本實例為替換空格,換行使用\n
方法2:替換多種字符方法
2.1:Pattern + Matcher+replaceAll方法:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
Matcher m = p.matcher(“1 1 1\n\t\r 1”);
String repl = m.replaceAll("");
2.2 replaceAll方法,下面是將xml字符串中的空格,*,!等替換為指定字符串
xml.replaceAll(" ","").replaceAll("*","******").replaceAll("!","!!!!!!");