我已按照How to create and run Apache JMeter Test Scripts from a Java program? 中给出的示例进行操作。示例程序运行配置到JMeter引擎的树,我想收集响应,实际请求和断言数据。我试过以下方式
SampleResult sampleResult = httpSamplerProxy.sample();
但是这会重新向API提交我的请求。有没有什么方法可以在没有重新提交的情况下得到结果?
答案 0 :(得分:0)
如果要“收集”此数据,请修改测试配置以将执行结果存储到.jtl结果文件中,如:
Summariser summer = null;
String summariserName = JMeterUtils.getPropDefault("summariser.name", "summary");
if (summariserName.length() > 0) {
summer = new Summariser(summariserName);
}
// Store execution results into a .jtl file
String logFile = "/path/to/results.jtl"
ResultCollector logger = new ResultCollector(summer);
logger.setFilename(logFile);
hashTree.add(hashTree.getArray()[0], logger);
然后使用“普通”JMeter属性配置要存储在其文件中的内容,即将下一行添加到 user.properties (位于JMeter安装的“bin”文件夹中) :
jmeter.save.saveservice.output_format=xml
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.responseHeaders=true
参考文献: