簡體   English   中英

JMeter 在 HTTP 請求中使用 beanshell 變量

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM