In my JMeter test plan, i have 3 transaction controllers. I want to extract the transaction controller name and pass it to the Jmeter script. I am unable to extract the transaction controller name, which is displayed into "Log viewer Panel".
To print transaction name , i have used BeanShell Listener, with following code :
String tname= sampleResult.toString();
if(tname.startsWith("T01_Login"))
{
log.info("*Transaction Name = " +sampleResult.toString() + " - Response time = " + sampleResult.getTime());
String temp = sampleResult.toString();
String temp2 = sampleResult.getTime().toString();
vars.put("Transaction_Name",temp);
vars.put("Response", temp2);
log.info(vars.get("Response"));
log.info(vars.get("Transaction_Name"));
}
I have used BSF post processor to store/extract the transaction name, by using following code:
Language selected in : Javascript
var transact = ${Transaction_Name};
vars.put ("TRANSACT",transact);
log.info(TRANSACT);
When checked into LogViewer panel, following text is displayed:
2017/03/27 17:06:13 INFO - jmeter.util.BeanShellTestElement: *Transaction Name = T01_Login - Response time = 39829
2017/03/27 17:06:13 INFO - jmeter.util.BeanShellTestElement: 39829
2017/03/27 17:06:13 INFO - jmeter.util.BeanShellTestElement: T01_Login
Kindly provide your valuable suggestion on this.