下圖是Http請求所需參數,有兩個參數需要處理,一個是timestamp,一個是pwd
timestamp填當前時間戳(yyyyMMddHHmmss格式)。pwd填MD5加密(userid[轉小寫]+固定字符串+userid的密碼+timestamp])
這種情況jmeter如何處理呢?
可以添加前置處理器,在發送請求前,獲取指定格式的當前時間戳,計算出http請求中參數pwd的值。
步驟
1、在jmeter中添加前置處理器
2、在前置處理器中做相關處理 ( 獲取指定格式當前時間戳,計算出http請求參數pwd的值)
import org.apache.commons.codec.digest.*; String userid = "harara"; String pwd = "123456"; String fixed = "88888888"; String timestamp = "${__time(yyyyMMddHHmmss,)}"; //pwd組包方式 md5(userid[轉小寫]+88888888+密碼+timestamp) String pwd1 = userid.toLowerCase() + fixed + pwd + timestamp; String sign = DigestUtils.md5Hex(pwd1); vars.put("sign",sign); vars.put("timestamp",timestamp);
3、在http請求中設置時間戳和密碼為前置處理器處理得到的值
4、發起請求,在察看結果樹中可以看到請求的內容已改為前置處理器中計算的值