我嘗試測試具有請求限制器(100秒內100次,否則ip被阻止)的api的性能。 您可以使用自定義標題來避免這種情況。這個頭的值由java類生成。JMeter:使用java類生成自定義頭的值
隨着jruby我可以使用「需求」和「導入」也使用類。
如何爲JMeter做到這一點?
其他信息: 標題值是動態的 - >對於每個請求都必須生成。 致電HttpPwd.genPwd()需要兩個* .jar文件
我嘗試測試具有請求限制器(100秒內100次,否則ip被阻止)的api的性能。 您可以使用自定義標題來避免這種情況。這個頭的值由java類生成。JMeter:使用java類生成自定義頭的值
隨着jruby我可以使用「需求」和「導入」也使用類。
如何爲JMeter做到這一點?
其他信息: 標題值是動態的 - >對於每個請求都必須生成。 致電HttpPwd.genPwd()需要兩個* .jar文件
這是如何進行的:
把2罐中JMeter的/ lib文件夾
把Groovy的all.jar在JMeter的中/ lib目錄
使用JSR223預處理器+ Groovy
在預處理器中放入以下代碼:
import xxxxxx; //其中xxxx是HttpPwd類的全名
vars.put(「header」,HttpPwd.genPwd());
HeaderName(我不知道它是什麼):$ {}頭
在您的JMeter項目中導航到Thread Group
>HTTP Request
。你可以在那裏設置你的請求參數。
這裏是通過執行此操作的方式JMeter __Beanshell function
假設您有fol降脂邏輯生成自定義標題:
package custom.header;
public class HttpPwd {
public static String getPwd() {
return String.valueOf(System.currentTimeMillis());
}
}
這是從一些罐子被稱爲「customheader.jar」
訪問,你想一個名爲「MyHeader」頭添加到您的要求
你應該看到的東西如:
GET http://www.google.com/?q=test
[no cookies]
Request Headers:
Connection: keep-alive
MyHeader: 1382360571781
Host: www.google.com
User-Agent: Apache-HttpClient/4.2.3 (java 1.5)
提及MyHeader存在和價值