IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 全干工程师神器 - Jmeter 07 - Jmeter监听器 -> 正文阅读

[开发测试]全干工程师神器 - Jmeter 07 - Jmeter监听器

八、Jmeter监听器

利用监听器监控执行过程中的数据;如执行次数、响应时间、吞吐量、错误率等等…

在jmeter中,通过监听器组件来提供查看、保存、和读取已保存的测试结果功能。
默认情况下,测试结果将被存储为xml格式的文件,文件的后缀: “.jtl”。另外一种存储 格式为CSV文件,该格式的好处就是效率更高,但存储的信息不如xml格式详细。

常用监听器报告

查看结果树

使用Jmeter测试过程中使用最多的监听器
可以在测试过程中可以看到请求的参数、响应的结果,方便对测试脚本的结果做出判断

但是在实际项目过程中,不论是接口自动化测试还是性能测试,在真正运行测试脚本的 时候。一般情况下,查看结果树是需要关闭的。
附:一般只运用于调试脚本。

Summary Report

概要报表;概要信息报告


在这里插入图片描述


所有数据写入一个文件:保存测试结果到本地。

文件名:指定保存结果。

仅日志错误:仅保存日志中报错的部分。

Successes:保存日志中成功的部分。

Configure:设置结果属性,即保存哪些结果字段到文件。一般保存必要的字段 信息即可,保存的越多,对负载机的IO会产生影响。

Label:取样器/监听器名称  [最好改成业务名称]

Samples :事务数量

Average:平均一个完成一个事务消耗的时间(平均响应时间)

Median:所有响应时间的中间值,也就是 50% 用户的响应时间,大概是这个意思

Min:最小响应时间

Max:最大响应时间


以上单位都是ms
Std.Dev:偏离量/标准差,值越小表示越稳定

Error %:错误事务率

Throughtput:每秒事务数,即tps 吞吐量

Received KB/sec:网络吞吐量;接收和发送的网络流量   单位是KB

Avg.Bytes:平均数据流量,单位是Byte。

聚合报告


在这里插入图片描述


Label:请求对应的name属性值。

Samples : 具有相同标号的样本数,总的发出请求数。

Average :请求的平均响应时间。

Median - 50%:50%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,就是排列在第50%的值。

90% Line :90%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,就是排列在第90%的值。

95% Line :95%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,就是排列在第95%的值。

99% Line :99%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,就是排列在第99%的值。

Min : 最小响应时间。

Max : 最大响应时间。

Error % :本次测试中,有错误请求的百分比。

Throughput : 吞吐量是以每秒/分钟/小时的请求量来度量的。这里表示每秒完成的请求数。

Received KB/sec : 收到的千字节每秒的吞吐量测试。

Sent KB/sec : 发送的千字节每秒的吞吐量测试。

聚合报告中的90%的理解

90% Line :90% of the samples took no more than this time. The remaining samples at leastt as long as this.

一组数由小到大进行排列,找到他的第90%个数(假如是12),那么这个数组中有90%	的数将小于等于12 ,也就是90%用户响应时间不会超过12 秒。

聚合图表(Aggregate Graph)

一般情况下使用不多,出图表的效率与LoadRunner 还是又一定的差距的。


在这里插入图片描述


Jmeter也有Loadrunner一样的图形监控扩展

Jmeter的痛点

1、图形监控,相比Loadrunner还是是逊色不少的
2、能监控Windows或Linux吗?就想Loadrunner一样。

扩展插件

其中JMeterPlugins-StandardJMeterPlugins-Extras是客户端的插件,ServerAgent是服务端的插件。
下载成功后,复制JmeterPlugins-Extras.jarJmeterPlugins-Standard.jar两个文件,放到jmeter安装文件中的lib/ext中,重启jmeter,即可看到该监视器插件。如下图:


在这里插入图片描述


在这里插入图片描述


将ServerAgent-2.2.1.jar上传到被测服务器,解压,进入目录,Windows环境,双击
ServerAgent.bat启动;linux环境执ServerAgent.sh启动,默认使用4444端口。

如出现如下图所示情况,即表明服务端配置成功:


在这里插入图片描述


  • 服务端启动校验
    • CMD进入命令框,观察是否有接收到消息,如果有,即表明ServerAgent成功启动。

  • 客户端监听测试
    • 给测试脚本中添加jp@gc - PerfMon Metrics Collector监听器,然后添加需要监控的服务 器资源选项,启动脚本,即可在该监听器界面看到资源使用的曲线变化。如下图所示:

在这里插入图片描述


在脚本启动后,即可从界面看到服务器资源使用的曲线变化,Chart表示主界面显示, Rows表示小界面以及不同资源曲线所代表的颜色,Settings表示设置,可选择自己需要 的配置。

PerfMon Metrics Collector

即服务器性能监控数据采集器。在性能测试过程中,除了监控TPS和TRT,还需要监控 服务器的资源使用情况,比如CPU、memory、I/O等。该插件可以在性能测试中实时监 控服务器的各项资源使用。

使用方法参照上述的 “客户端监听测试”

Response Times Over Time

即TRT:事务响应时间,性能测试中,最重要的两个指标的另外一个。该插件的主要作 用是在测试脚本执行过程中,监控查看响应时间的实时平均值、整体响应时间走向等。

使用方法如上,下载安装配置好插件之后,重启jmeter,添加该监视器,即可实时看到 实时的TRT数值及整体表现。

某次压力测试TRT变化展示图:


在这里插入图片描述


Transactions per Second

即TPS:每秒事务数,性能测试中,最重要的2个指标之一。该插件的作用是在测试脚 本执行过程中,监控查看服务器的TPS表现————比如 JU


在这里插入图片描述


某次压力测试TPS变化展示图:

在这里插入图片描述


Hits per Second

点击率

在做性能测试的时候,不建议添加太多的监听器,在并发量高得情况下
会出现问题,毕竟Jmeter 是需要读取文件的。

邮件观察仪

在QQ/163邮箱中开启pop3/smtp服务,并生成授权码,备用


在这里插入图片描述


在jmeter中添加邮件观察仪,并配置如下


在这里插入图片描述


在这里插入图片描述


说明信息:

1、文件名:只需要给出路径和保存的文件名称即可,给定之后将会把测试结果的数据写入到文件中
  注:它不会将此文件已附件的形式在邮件中,只是将测试结果写入到了定的此目录文件中,如果你运行完脚本,
     直接在此路径下打开此文件就可以看到运行结果
     
2、Address(s):收件人,添加多个收件人邮箱时,中间用逗号隔开,
   如:lucky@iberhk.com,bob@iberhk.com

3、Success Limit与Failure Limit:当成功数与失败数为几时进行邮件的发送,我写的1,则失败1次后将发送邮件通知我

4、SMTP的配置见下文

SMTP的配置
  重要信息:
    HOST:smtp.exmail.qq.com
    Port:465
    Login:登录的邮箱,填写自己的邮箱即可
    Password:16位的授权密码
    Connection Security:一定要选SSL

如何获取授权码自行百度。


点击test mail则会在对应邮箱中收到邮件

在测试过程,需要配置success limit failure limit的值


在这里插入图片描述


  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-10-06 12:32:02  更:2021-10-06 12:32:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:26:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码