[英]JMeter Beanshell sampler that runs when HTTP Request Sampler fails
[英]JMeter use beanshell variable in HTTP Request
我是這里的絕對新手(我的意思是 JAVA),花了幾個小時尋找解決方案,現在我只想拍攝自己。
我想在位於 HTTP 請求正上方的 beanshell 斷言中創建一個字符串。
在豆殼中我寫道:
String docid="abcd";
(實際上我希望將字符串與一些變量連接起來)
在 HTTP 請求中,發送參數我添加了${docid}
。
在BeanShell Assertion description 部分,您可以找到以下內容:
vars - JMeterVariables - e.g. vars.get("VAR1"); vars.put("VAR2","value"); vars.putObject("OBJ1",new Object());
props - JMeterProperties (class java.util.Properties) - e.g. props.get("START.HMS"); props.put("PROP1","1234");
因此,要在 beanshell 代碼(在您的情況下為 BeanShell Assertion 采樣器)中設置 jmeter 變量,請使用以下內容:
String docid = "abcd";
vars.put("docid",docid);
或者干脆
vars.put("docid","abcd");
然后您可以將其引用為 ${docid},就像您在 HTTP 請求中所做的那樣。
如果您不太了解 Java,可以使用 BSF 或 JSR223 測試元素中的任何一個,然后選擇 Javascript 語言作為腳本語言
http://jmeter.apache.org/usermanual/component_reference.html#JSR223_Sampler
如果您需要將值從一個 bean shell 采樣器傳遞到另一個,您應該使用變量。
vars.put("a", "something")
在其他采樣器中,您應該具有以下內容:
String otherSampler = vars.get("a")
關於調試 Shell 采樣器 - 這並不容易。 我建議使用 SampleResult 對象。 如何使用,可以看這里Debugging Bean Shell Sampler
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.