在CSV中保存JMeter响应
我是JMeter的新手,正在尝试为我正在处理的项目执行负载测试。 我已经创建了一个测试计划来创建2000个用户。结果请求如下所示: { :“状态”:“200”, :“错误”:null, :“内容”:“1858” } 我想将所有2000个请求的“内容”值保存在一个csv文件中。在CSV中保存JMeter响应,csv,jmeter,Csv,Jmeter,我是JMeter的新手,正在尝试为我正在处理的项目执行负载测试。 我已经创建了一个测试计划来创建2000个用户。结果请求如下所示: { :“状态”:“200”, :“错误”:null, :“内容”:“1858” } 我想将所有2000个请求的“内容”值保存在一个csv文件中。 有什么方法可以做到这一点吗?简易方法:将值附加到.jtl结果文件中 将以下行添加到user.properties文件(位于JMeter安装的/bin文件夹下) 添加为返回该内容的请求的子级,并按如下方式进行配置: 参考
有什么方法可以做到这一点吗?简易方法:将值附加到.jtl结果文件中
- 参考名称:
content
- 正则表达式:
“内容”:“(\d+”
- 模板:
$1$
艰难之路:自定义脚本
测试完成后,您将在JMeter的工作目录(通常为/bin)中看到content.csv文件,其中包含所有“content”值 谢谢你的回答@Dmitri。我更喜欢选项2,因为我希望在下一个请求中使用CSV中的值。
sample_variables=content
jmeter -n -t /path/to/your/script.jmx -l /path/to/test/results.jtl
import java.util.regex.Matcher;
import java.util.regex.Pattern;
String response = new String(data);
FileOutputStream out = new FileOutputStream("content.csv", true);
String regex = "\"Content\":\"(\\d+)\"";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(response);
if (m.find()) {
String content = m.group(1);
out.write(content.getBytes());
out.write(System.getProperty("line.separator").getBytes());
out.flush();
}