添加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,即可。