如何使用JMeter在文件中编写HTML响应

时间:2018-05-19 06:01:55

标签: jmeter

任何人都可以帮我如何使用JMeter从View Results Tree监听器保存HTML响应(包括屏幕图像)吗?

我可以将结果存储在csv中,但我的主要目标是存储在视图结果树中显示的屏幕图像

屏幕截图名称应存储在步骤名称下(例如:TC002帐户菜单)

enter image description here

3 个答案:

答案 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);

或者: (使用计数器采样器)

enter image description here

def filename = "${counter}" + "response.html";
File file = new File("C://JmeterResultFolder//"+filename);

最后,您将获得每个请求的文件 enter image description here

答案 1 :(得分:0)

您可以使用.csv文件存储响应数据。请参考以下屏幕

Basic link for Listeners

.csv File

答案 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开销,因此请明智地使用它(例如,仅用于测试开发和/或调试),因为它可能会在高负载或高负载的情况下破坏您的测试。