jmeter监听器大家都会用,但我这个妙招能让你提早一小时下班!

使用过 jmeter 的同学,应该都会使用监听器,在每个监听器中,都会有一个“所有数据写入一个文件”的功能,那这个功能应该怎么用呢?今天,我们就来讲讲这个功能的使用。

在这里插入图片描述

几乎所有的监听器都有这样一个功能。

那对于这个监听器都带有的功能,到底该怎么用呢?

点击“浏览”按钮,会弹出系统的文件选择窗口

图片

我们可以从弹窗的文件类型中看到,支持的文件类型有三种:XML、jtl、CSV。

其实,jmeter 还支持一种:.db 只是,这种类型很少被用了。

也就是说,我们选择写入的文件类型有三种选择。其中,CSV 是 jmeter 目前版本默认的。可以在jmeter.properties文件中,找到

“jmeter.save.saveservice.output_format=”参数的值。

自己选择一个路径,可以选择一个已经存在的文件,也可以自己创建一个空文件,不过,建议使用空文件,因为,在jmeter默认参数配置时,

“resultcollector.action_if_file_exists=ASK”,如果文件已经存在,就会弹窗提示。

图片

当然,也可以自己修改为“APPEND” 自动追加到文件末尾、“DELETE”自动删除原文件再创建新文件。
默认情况下,CSV 文件,保存的字段有 (jtl 文件也相同)

timeStamp   elapsed label   responseCode    responseMessage threadName  dataType    success failureMessage  bytes   sentBytes   grpThreads  allThreads  URL Latency IdleTime    Connect

在这里插入图片描述
细心的同学,应该从这个图表中可以发现,这个 CSV 中是没有 request-body 和 response-body 的,也就是说,请求和响应的一些数据是没有写入文件的。这些数据,主要是在做性能分析生成图表的时候使用的。

那到底怎么用呢?

如果你使用的是图形界面 jmeter,你可以在 jmeter 中,任意一个监听器中,点击“浏览”,选择你的 CSV 或 jtl 文件,如你使用“查看结果树” 元件

图片

或者使用“聚合报告” 元件:

图片

就能看到运行的结果,以及统计分析报告。

这个用法是不是很简单,你 ‘学废了’ 吗?

但是,因为他是 CSV 文件或 jtl 文件,还是有一些不足的。首先,CSV 文件,是不会保存请求体和响应结果相关的数据,所以,在使用“查看结果树” 元件来查看时,request body, request headers,response body, response headers 中都是没有数据的。然后,就是,如果 CSV 文件或 jtl 文件有大几十 M 或几百 M,在使用“查看结果树” 元件查看时,可能会导致 jmeter 无响应。

在 jmeter5.1.1 版本开始,如果你使用的图形界面,你也可以把 CSV 文件或 jtl 文件,生成 HTML 报告。

图片

点击第 1 个“浏览”,选择 CSV 文件或 jtl 文件,点击第 2 个“浏览” ,选择 jmeterbin 文件夹中的 jmeter.properties 或 user.properties 文件,点击第 3 个“浏览”, 选择一个空文件夹,然后点击最底部的 “Gererate report” 按钮,就可以生成 HTML 到你选择的空文件夹中。

图片

如果,你使用的是无图形界面 jmeter,可以使用 jmeter -g xxxx.jtl -e -o xxxempty_dict “xxxx.jtl” 可以是你的 CSV 文件也可以是 jtl 文件, “xxxempty_dict” 就是你把生成 HTML 放的空文件夹名称。

默认的 CSV 或 jtl 文件,没有保存请求体和响应相关数据,那有没有什么办法解决呢?

我们可以通过下面两种方法:

选择一个空的 XML 文件,然后,点击 “配置”按钮,在弹窗中,选中“Save As XML” “Save Response Data(XML)” “Save Sampler Data(XML)” 三个复选框,然后,点击”完成“

图片

这样,请求体和响应相关数据,就都保存到了 XML 文件中。

注意:

1、想要保存请求体和响应相关数据,文件必须为 XML 格式,必须构想 Save As XML

2、Save Sampler Data(XML)会保存请求的 cookie、请求方法、请求体
也可以选择一个空 XML 文件,然后,点击 “配置”按钮,在弹窗中,选中“Save As XML” ,点击”完成“, 然后,点击 ”测试计划“中的 ”函数测试模式“

图片

用这两种方法生成的 XML 文件,就都包含了请求体和响应相关数据,在 jmeter 图形界面中,选择”查看结果树“,点击选择写入文件的浏览,打开 XML 文件,这个时候,我们查看到请求 和 响应的详细信息。

图片

注意:

XML 文件不能像 CSV、jtl 文件一样生成 HTML 报告,它要生成报告,需要与 ant 集成。

前面,我们都是讲的在 jmeter 图形界面中,把数据写入文件,我们也可以通过采用无图形界面的 CLI 命令来生成 CSV 或 jtl 文件。

jmeter -n -t xx.jmx -l xxx.jtl -e -o xxxxempty_dict

xx.jmx 是 jmeter 脚本,xxx.jtl 或 xxx.csv 是生成的文件,xxxxempty_dict 是结果转换为的 HTML 文件。

好了,对于 jmeter 生成文件,你学会了吗?

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/173834.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在Windows WSL (Linux的Windows子系统)上运行的Ubuntu如何更改主机名

在Windows 安装的Ubuntu,如何修改主机名。有列了两种方法,提供给大家参照。 文章目录 方法一:hostname指令修改方法二:修改配置文件修改hostnanmewsl.conf 文件配置选项推荐阅读 方法一:hostname指令修改 hostname指…

【虹科干货】ntopng如何将漏洞扫描与流量监控相结合,以提高网络安全性

ntopng为人所知的“身份”是被动流量监控。然而,如今的ntopng6.0也进化出主动监控功能来,漏洞扫描功能便是其中一个。那么漏洞扫描功能是什么?其独特之处是什么?用户该如何使用? 新的漏洞扫描和CVE支持,可…

使用脚手架创建Vue3项目

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: Vue ✨特色专栏: MySQL学习…

Redis 两种持久化方式 AOF 和 RDB

目录 一、Redis 的持久化 二、Redis 的持久化方式 RDB RDB 介绍 RDB 的触发方式:. 三、RDB的文件生成策略 四、Save 和 Bgsave 命令的区别 六、RDB 最佳配置 七、触发机制-不容忽略方式 AOF 一、AOF介绍 二、RDB所存在的问题 三、AOF 三种策略 四、AOF…

谭巍主任贴心分享:想要HPV尽快转阴必吃的五种水果

HPV感染是常见的生殖道病毒感染,它可能导致宫颈癌等严重疾病。对于HPV感染者来说,转阴是预防和治疗的关键。北京劲松HPV诊疗中心主任谭巍认为除了接受正规的治疗和注意生活方式的调整外,饮食也是促进HPV快速转阴的重要方面。 一、苹果 苹果…

2.5 - 网络协议 - HTTP协议工作原理,报文格式,抓包实战

「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 HTTP协议 1、HTTP协议工作原理2、HTTP协议报文3、H…

软件建模与文档:架构师怎样绘制系统架构蓝图?

Java全能学习面试指南:https://javaxiaobear 首先,请你设想这样一个场景:如果公司安排你做架构师,要你在项目开发前期进行软件架构设计,你该如何开展你的工作?如何输出你的工作成果?如何确定你的…

mysql文本类型的最大长度限制

mysql支持很多类型&#xff0c;不同的文本有不同的长度限制。可以根据实际需要进行选择。 TINYBLOB, TINYTEXT L 1 bytes, where L < 2^8 (255 Bytes) BLOB, TEXT L 2 bytes, where L < 2^16 (64 Kilobytes) MEDIUMBLOB, MEDIUMTEXT L 3 b…

Jupyter Notebook本地部署并实现公网远程访问内网Jupyter服务器【内网穿透】

&#x1f525;博客主页&#xff1a; 小羊失眠啦. &#x1f3a5;系列专栏&#xff1a;《C语言》 《数据结构》 《Linux》《Cpolar》 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 文章目录 1.前言2.Jupyter Notebook的安装2.1 Jupyter Notebook下载安装2.2 Jupyter Notebook的配…

Vue3中调用外部iframe链接方法

业务场景&#xff0c;点击某个按钮需要跳转到外部iframe的地址&#xff0c;但是需要在本项目内显示。以前项目中写过调用外部链接的功能&#xff0c;是有菜单的&#xff0c;但是这次是按钮&#xff0c;所以不能直接把地址配到菜单里。 实现方法&#xff1a;在本地路由文件里写个…

计算机组成原理-Cache写策略

文章目录 总览写命中写回法全写法 写不命中写分配法非写分配法 多级Cache总结 总览 写命中 写回法 数据不一致指的是Cache中的和主存中的数据不一致 全写法 写缓冲 利用写缓冲使得将写入Cache的数据在写入Cache的数据同时也会写入写缓冲。然后再在 CPU在干其他事时有控制电…

基于动量的梯度下降

丹尼尔林肯 (Daniel Lincoln)在Unsplash上拍摄的照片 一、说明 基于动量的梯度下降是一种梯度下降优化算法变体&#xff0c;它在更新规则中添加了动量项。动量项计算为过去梯度的移动平均值&#xff0c;过去梯度的权重由称为 Beta 的超参数控制。 这有助于解决与普通梯度下降相…

【Spring】Spring是什么?

文章目录 前言什么是Spring什么是容器什么是 IoC传统程序开发控制反转式程序开发理解Spring IoCDI Spring帮助网站 前言 前面我们学习了 servlet 的相关知识&#xff0c;但是呢&#xff1f;使用 servlet 进行网站的开发步骤还是比较麻烦的&#xff0c;而我们本身程序员就属于是…

【转】ORB-SLAM2调用OAK-D双目摄像头进行点云建图

编辑&#xff1a;OAK中国 首发&#xff1a;A. hyhCSDN 喜欢的话&#xff0c;请多多&#x1f44d;⭐️✍ 内容来自用户的分享&#xff0c;如有疑问请与原作者交流&#xff01; ▌前言 Hello&#xff0c;大家好&#xff0c;这里是OAK中国&#xff0c;我是助手君。 近期在CSDN刷…

马斯克发布一封指控 Sam Altman 的匿名信引发猜测,OpenAI “宫斗大戏”终迎结局?

就在昨晚&#xff0c;持续了数日的 OpenAI 宫斗大戏&#xff0c;似乎终于要大结局了——OpenAI 官宣&#xff1a;Sam Altman 将回归 OpenAI&#xff0c;重新担任 CEO&#xff01; “我们已达成原则性协议&#xff0c;Sam Altman 将重返 OpenAI 担任 CEO&#xff0c;新的初始董…

OpenGL的学习之路 -5

1.视景体 正交投影 人眼看世界&#xff0c;有一个可见范围。范围内可见&#xff0c;范围外不可见。视景体就是这么一个概念。 &#xff08;上图仅学习记录用&#xff09; 在OGL中&#xff0c;有两种投影方式&#xff0c;对应两种视景体。第一种&#xff0c;正交投影&#xf…

Linux进程状态(僵尸进程,孤儿进程)+进程优先级+进程调度与切换

Linux进程状态[僵尸进程,孤儿进程]进程优先级 一.进程状态1.进程排队2.教材上对于进程状态的描述:1.阻塞挂起 3.Linux下具体的进程状态:1.Linux下的进程状态数组2.R3.S:可终止睡眠---浅度睡眠1.补充:前台进程和后台进程2.一种"奇怪"的现象 4.D:不可终止睡眠---深度睡…

探索人类命运与宇宙奥秘的震撼之旅 豆瓣高分巨作《三体》湖北卫视开播

当思考触及宇宙的边缘&#xff0c;当人类命运与外星文明相碰撞&#xff0c;电视剧《三体》以其深邃的内涵和引人深思的故事&#xff0c;重新审视人类的过去、现在和未来&#xff0c;带我们逐步揭开地外未知文明“三体”世界的神秘面纱。根据著名科幻作家刘慈欣同名小说改编&…

Ubuntu新手使用教程

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

Django之ORM

ORM全称对象关系映射 作用&#xff1a;通过python面向对象的代码简单快捷的操作数据库&#xff0c;但是封装程度太高&#xff0c;有时候sql语句的效率偏低&#xff0c;需要自己写sql语句 类----->表 对象--->记录 对象属性--->记录某个字段对应的值 写在models.p…