赞
踩
“察看结果树”(View Results Tree)是一个极其重要的监听器组件,它允许用户直观地检查每个采样器请求的详细执行结果。这对于测试脚本的开发和调试阶段尤为重要,因为它能够即时反馈请求的响应数据、错误信息及性能指标。本文档将详细介绍“察看结果树”的功能、配置方法以及使用时的注意事项。
“察看结果树”监听器提供了详细的请求与响应信息视图,帮助开发者快速定位问题、验证预期结果,是JMeter中最常用的调试工具之一。但请注意,由于其详细记录每一项请求的响应,因此在高负载测试中应避免使用,以防止对测试系统造成不必要的负担。
● 请求详情:展示发送给服务器的完整HTTP请求,包括请求行、头信息、参数及正文。
● 响应详情:展示服务器返回的完整HTTP响应,包括状态码、响应头和响应体。
● 时间统计:提供请求的处理时间(如响应时间、连接时间),有助于性能分析。
● 结果视图:支持“文本”、“HTML”、“文档”等多种视图模式,便于不同格式的响应数据查看。
● 异常捕获:清晰标记出请求失败或异常的情况,并提供错误信息。
● 保存结果:可配置将测试结果保存到文件,方便后续分析或记录。
首先我们使用SpringBoot框架编写一段测试代码接口
//html @GetMapping(value = "/html",produces = "application/html") public String Returnhtml() { return "<!DOCTYPE html>\n" + "<html lang=\"en\">\n" + "<head>\n" + " <meta charset=\"UTF-8\">\n" + " <title>简单表单提交界面</title>\n" + "</head>\n" + "<body>\n" + " <h1>欢迎来到我们的简易表单</h1>\n" + " <form action=\"/submit_form\" method=\"post\">\n" + " <label for=\"name\">姓名:</label>\n" + " <input type=\"text\" id=\"name\" name=\"name\"><br><br>\n" + " <label for=\"email\">电子邮件:</label>\n" + " <input type=\"email\" id=\"email\" name=\"email\"><br><br>\n" + " <label for=\"message\">消息:</label>\n" + " <textarea id=\"message\" name=\"message\"></textarea><br><br>\n" + " <input type=\"submit\" value=\"提交\">\n" + " </form>\n" + "</body>\n" + "</html>"; }
我们编写如下脚本:
线程组:保持默认
HTTP信息头管理器:名称设置为accept,值为application/html
HTTP请求:协议设置为http,服务器名称或IP设置为127.0.0.1,端口设置为8091,方法设置为GET,路径设置为/html,内容编码为utf-8
我们在“察看结果树”中的所有数据写入一个文件中点击配置,会弹出“Sample Result Save Configuration”配置界面,我们可以勾选其中几项进行保存内容,比如勾选Save As XML,Save Label,Save Idle Time,然后在文件名称中输入一个地址:d:\test.xml,再进行保存
运行脚本,打开对应的test.xml文件,查看下面内容
<?xml version="1.0" encoding="UTF-8"?>
<testResults version="1.2">
<httpSample it="0" lb="HTTP请求"/>
</testResults>
在上述运行的脚本,在察看结果树中可以看到HTTP请求,默认情况下展示的是Test模式,如果我们在调试过程中对数据进行提取,查看结果树提供了不同内容
选取RegExp Tester,例如我们可以知道我们返回的结果内容是
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>简单表单提交界面</title> </head> <body> <h1>欢迎来到我们的简易表单</h1> <form action="/submit_form" method="post"> <label for="name">姓名:</label> <input type="text" id="name" name="name"><br><br> <label for="email">电子邮件:</label> <input type="email" id="email" name="email"><br><br> <label for="message">消息:</label> <textarea id="message" name="message"></textarea><br><br> <input type="submit" value="提交"> </form> </body> </html>
如果我们要获取< h1>< \h1>中间内容进行调试,我们可以在Regular expression中输入正则表达式进行表达式书写进行测试,并且点击Test
选取边界提取器测试,通过上述内容我们可以知道我们返回的结果内容,如果我们要获取< h1>< \h1>中间内容进行调试,我们可以在左边界中输入< h1>,右边界输入<\h1>,并且点击测试
我们可以通过提供的内容进行视图预览,如HTML,XML等,如我们选择HTML,我们查看HTTP请求响应数据中Response Body的内容
● 性能影响:由于其详尽的数据记录特性,在大规模压力测试时应禁用该监听器,以免占用过多资源。
● 安全考量:响应数据可能包含敏感信息,确保测试环境与生产环境隔离,且不将含有敏感数据的日志公开。
● 内存消耗:长时间运行大量测试时,结果树会占用较多内存,请定期清理或适当使用写入文件功能。
“察看结果树”是JMeter测试人员不可或缺的调试利器,通过熟练运用它可以极大地提高测试脚本的开发效率与准确性。正确并有效地利用其功能,能在保证测试质量的同时,优化测试流程,提升整体测试效能。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。