任何人都可以帮我如何使用JMeter从View Results Tree监听器保存HTML响应(包括屏幕图像)吗?
我可以将结果存储在csv中,但我的主要目标是存储在视图结果树中显示的屏幕图像
屏幕截图名称应存储在步骤名称下(例如:TC002帐户菜单)
答案 0 :(得分:1)
您可以添加JSR223PostProcessor并将响应正文保存到文件中。 例如:
File file = new File(pathToYourFile);
FileWriter fstream= new FileWriter(file,true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(prev.getResponseDataAsString());
out.close();
fstream.close();
如果您希望将每个答案保存在不同的文件中,则需要添加代码来创建文件并为其添加新的uniq名称。
<强> UPD 强> 在您自己的文件中保存每个响应的一种方法是根据计数器的值生成名称,如下所示: (使用JMeter函数)
def filename = "${__counter(FALSE,)}" + "response.html";
File file = new File("C://JmeterResultFolder//"+filename);
或者: (使用计数器采样器)
def filename = "${counter}" + "response.html";
File file = new File("C://JmeterResultFolder//"+filename);
答案 1 :(得分:0)
答案 2 :(得分:0)
如果出于任何原因需要,可以将JMeter配置为存储响应数据,将下一行添加到 user.properties 文件中:
jmeter.save.saveservice.output_format=xml
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.response_data.on_error=true
并重新启动JMeter以选择属性。下次运行脚本时,响应数据将被内联到.jtl结果文件中,您将能够使用View Results Tree侦听器查看它。
更多信息:
请注意,存储响应数据会导致大量磁盘IO开销,因此请明智地使用它(例如,仅用于测试开发和/或调试),因为它可能会在高负载或高负载的情况下破坏您的测试。