添加Bean shell預處理程序。
import org.apache.jmeter.config.Arguments; import org.apache.jmeter.protocol.http.control.HeaderManager; import org.apache.jmeter.protocol.http.control.Header; import org.apache.jmeter.testelement.property.CollectionProperty; import com.test.common.utils.encrypt.RsaUtil; import java.util.Calendar; //sampler 里面有個getHeaderManager 可以獲得請求頭 HeaderManager headers =sampler.getHeaderManager();
headers.removeHeaderNamed("x-ts");
headers.removeHeaderNamed("x-sign");
//打印全部的頭部內容 log.info(headers.getHeaders().getStringValue()); ////設置請求頭 String timestamp = String.valueOf(Calendar.getInstance().getTimeInMillis()); String sign =RsaUtil.encrypt(timestamp); System.out.println(timestamp); // new 一個Header對象 Header signHeader1 = new Header("x-ts", timestamp); Header signHeader2 = new Header("x-sign", sign); // 添加 Header 到請求頭管理器 headers.add(signHeader1); headers.add(signHeader2); // 打印全部的頭部內容 log.info("---------------"+headers.getHeaders().getStringValue()+"+++++++++++++++++++");
如果有自定義的工具類,打包完放入{JMeter 主目錄}\lib\ext,即可。