![d7bf78ee99f9f9ff19c6f490a6be902b.png](https://i-blog.csdnimg.cn/blog_migrate/dd28ac23a261dea967668e3e15f5980f.jpeg)
一、查看结果树
察看结果树以树的形式显示了所有取样器的响应,您可以查看任何取样器的响应。
性能测试时,不能使用察看结果树,因为它会消耗大量资源
性能测试时,不能使用察看结果树,因为它会消耗大量资源(内存和CPU)。它只能在功能测试或测试计划调试和验证时使用。
察看结果树显示了所有样本响应树,您可以查看任何样本的响应。除了显示响应之外,您还可以看到返回此响应的时间以及响应代码。请注意,“请求”页签只显示由JMeter添加的头。并不显示任何可由HTTP协议实现层添加的头(如host)。
![8ac92d86833195fe486998b596f0558a.png](https://i-blog.csdnimg.cn/blog_migrate/d8c4606b08b00357af7345145cd3bffc.jpeg)
放的位置不同,查看的结果也不同。在线程组下添加察看结果树,查看线程组下所有请求的结果;放在具体某个请求下,只查看此请求的结果;若放在某个控制器节点下,则查看此控制器下节点执行的结果。
![f4affe2b93831e1159212627053124b3.png](https://i-blog.csdnimg.cn/blog_migrate/15e9f4522f7ff45edc98a56c2cfa09c6.jpeg)
查看结果树可以查看每个请求具体的详情,方便进行测试的比对。 可以在树图上方选择需要展示的类型,如Text,html,Document,Json,XML等。 取样器结果:取样器执行后的基本数据,Response code,Response message等参数。 请求:分别有请求体与请求头 响应数据:分别有响应体与响应头
![2c5c95966bdb2a0a312c25dd315e8823.png](https://i-blog.csdnimg.cn/blog_migrate/9dc8dddda1c49ba62820bf916278424f.jpeg)
名称:控制器的描述性名称,显示在计划树上。
注释:控制器注释信息,非必填项
文件名:保存或载入的结果文件名
如果文件名是固定文件名,执行时若文件已经存在,系统会提示,是否要覆盖,因此,可以使用一个变量名,这样每次执行都会生成一个不同名的结果文件,且最好保存为csv文件格式,不要使用xml格式。
例如,文件名可指定为:${__property(user.dir)}${__BeanShell(File.separator,)}tree1_result_${__time(yyyyMMdd-HHmmss)}.csv
二、聚合报告
![60ba79e1733ddc47dbc9de89a0b9e5f0.png](https://i-blog.csdnimg.cn/blog_migrate/625a685db309cbc6dd925c93a367116c.jpeg)
聚合报告各参数的含义说明:
1. Label
每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
2. #Samples(样本)
表示测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里就显示对应的 HTTP Request的执行次数是100
3. Average(平均值)
平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间
4. Median(中位数)
50%用户的响应时间
5. 90%Line(90%百分位)
90%用户的响应时间
6. Min(最小值)
最少响应时间
7. Max(最大值)
最大响应时间
8. Error%(异常率)
本次运行测试中出现错误的请求的数量/请求的总数
9. Throughput(吞吐量)
吞吐量,默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
10. (接收/发送)KB/sec
每秒从服务器端(接收/发送)的数据量,相当于LoadRunner中的Throughput/Sec
三、图形结果
![1bd8f065d3b3beecb761e08850a533e6.png](https://i-blog.csdnimg.cn/blog_migrate/1196806f95aa176b7620e8ad0b2697b3.jpeg)
1.1 样本数目代表向服务器发送的请求数目
1.2 偏离代表服务器相应时间变化的数据的分布
1.3 吞吐量代表服务器每分钟对数据的处理量
1.4 最新样本表示服务器相应最后一个请求的时间
1.5 平均值表示总运行的时间除以发送给服务器的请求数
1.6 中间值代表有一半的服务器时间低于该值,而另一半高于该值
label表示数据请求方式
#samples代表向服务器发送的请求数目
average表示总运行时间发送到服务器的请求数
Throught:吞吐量,可以理解成TPS(TPS表示每秒通过的事物数,QPS表示每秒查询接口数。jmeter中如果只有单接口,那么TPS=QPS。如果是多接口的混合场景,只有在事物控制器下执行,才能将其理解为TPS)
四、Response Time Graph: 响应时间图
![f834592f164cd1f5205f70fe28868c45.png](https://i-blog.csdnimg.cn/blog_migrate/31a3ad3b4fee44c80b4cd5f4b3c7f2cc.jpeg)
各名词解释:
2.1 Graph setting 图片设置
2.2 Interval:横坐标的刻度
2.3 Title 标题 默认
2.4 Line setting 线条设置 默认
2.5 Graph size 图片尺寸 默认
2.6 X Axis 横坐标 默认
2.7 Y Aixs 纵坐标
2.8 Scale maximum value 纵坐标长度
2.9 increment scale 纵坐标的刻度 ;Legend 字体设置 默认
图形展示:
![9b3a198c87d9cd963db5345860fe1840.png](https://i-blog.csdnimg.cn/blog_migrate/29b237995513dfcc654508793a6cb096.jpeg)
五、Aggregate Graph:记录响应时间
![58f266a78c1c237d18b4d0d7674e5084.png](https://i-blog.csdnimg.cn/blog_migrate/79258627ad3f03f1caa3f687de3c4f81.png)
除Column代表图形展示的参数外,其他与Response Time Graph中设置项一样
![bd21390a110d044726cc1e21cf3169ed.png](https://i-blog.csdnimg.cn/blog_migrate/ab9935b3e213dcf574f3dd22252c98c1.png)
六、断言结果
对相应的请求添加断言
![04380c87de776f78bae8668e336fcab8.png](https://i-blog.csdnimg.cn/blog_migrate/ed5a740c455c9400eacc0b2135f39278.jpeg)
Main sample and sub-samples:断言应用于主采样器和子采样器。
Main sample only:断言仅应用于主采样器。
Sub-samples only:断言仅应用于子采样器。
Jmeter Variable:断言将被施加到命名变量的内容。
在这里我们要注意下,添加了响应断言可不是就这么结束了,既然有响应,就应该有结果显示,我们需要在添加个监听器,断言结果。
断言结果就看我们断言后得结果,正确还是错误就会在断言结果中显示,如下图:
![9b0014daa913d9dfca18a1586cf52b51.png](https://i-blog.csdnimg.cn/blog_migrate/d3e33f48ba5bd71a167d173d560d2af5.jpeg)
登录响应断言成功,未显示自定义失败消息—fail
调试取样器响应断言失败了,显示了自定义失败消息—fail