Sometimes we need to export the JMeter runtime variables to a external file, for example, csv
, txt
.
Now, I provide a example that how to the variables to a external file after getting the data using a regular expression extractor.
Expected that you knows how to get data using Regular Expression Extractor
.
Variables of JMeter Runtime to save to external file
Email: email_RegEx
Token: token_RegEx
How to save the variables to external file
We can save the variables via BeanShell
which is JMeter built-in component.
Where to add BeanShell
step to export variable to a external file
- Add
BeanShell
handler afterRegular Expression Extractor
The tree of thread group similar as below:
Thread group
|
- Sampler
|
- Regular Expression Extractor
- BeanShell
- Other Samplers
Sample as my testing:
The tree of thread groupBeanShell Scripting
How to write BeanShell, please check the link below, in this article we will not relate to the scripting of BeanShell.
BeanShell Script for saving variables to a external file
I just provide a sample that how to save the two variables that mention above to a external file.
Task list:
- Save variables to a external file
- Variables name:
email_RegEx
,token_RegEx
- External file name:
argList.csv
- Output dirctory:
/app/jmeter/test_data
Steps:
- Add a
BeanShell PostProcessor
after your Regular Expression Extractor.
Named this processor as your prefered, no others set for the field of this processor.
-
Scripting in script edit zone, and add the code below.
// get variables from regular expression extractor email = vars.get("uemail_RegEx"); token = vars.get("token_RegEx"); // pass true if want to append to existing file // if want to overwrite, then don't pass the second argument FileWriter fstream = new FileWriter("/app/jmeter/test_data/argList.csv", true); BufferedWriter out = new BufferedWriter(fstream); out.write(email + "," + token); out.write(System.getProperty("line.separator")); out.close(); fstream.close();
- Save the JMeter script, and run.
- Goto output directory
/app/jmeter/test_data
, you will find that the output file namedargList.csv
was created, and open it, the variables export were all here.
Please note that, in statement
email = vars.get("uemail_RegEx");
, the variableuemail_RegEx
is the variable name that regular expression extract the data save to.