I'm an absolute rookie here (JAVA i mean), spent hours looking for a solution, now i just want to shoot myself.
I want to create a string in the beanshell assertion which is placed right above the HTTP Request.
In the beanshell i wrote:
String docid="abcd";
(in actuality i wish to concatenate a string with some variables)
In HTTP Request, send parameters i add ${docid}
.
If you need to pass value from one bean shell sampler to another, you should use variables.
vars.put("a", "something")
In other sampler, you should have something like:
String otherSampler = vars.get("a")
About debugging Shell Samplers - It is not so easy. I suggest to use SampleResult object. How to use it, you can see here Debugging Bean Shell Sampler
In BeanShell Assertion description section you can find the following:
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");
So to set jmeter variable in beanshell code (BeanShell Assertion sampler in your case) use the following:
String docid = "abcd";
vars.put("docid",docid);
or simply
vars.put("docid","abcd");
and then you can refer it as ${docid}, as you've done in your HTTP Request.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With