温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Jmeter怎么获取jtl文件中所有的请求报文

发布时间:2021-09-07 13:52:29 来源:亿速云 阅读:158 作者:chen 栏目:开发技术

本篇内容主要讲解“Jmeter怎么获取jtl文件中所有的请求报文”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Jmeter怎么获取jtl文件中所有的请求报文”吧!

前言

大家都知道Jmeter运行测试可以产生jtl文件,里边包含了整个脚本的请求返回以及各种设置。近期遇到一个问题给大家分享下,就是作为性能测试组,从自动化测试组中拿到了一堆jtl文件,需要自己提取其中的请求报文。

用Jmeter打开jtl文件可以看到,请求报文是xml报文,显示如下图:

Jmeter怎么获取jtl文件中所有的请求报文

把jtl文件改为txt文件,打开看到如下图:

Jmeter怎么获取jtl文件中所有的请求报文

内容还是比较多的,有N个请求,应该怎么提取呢,有Java基础的朋友应该可以使用代码直接提取,本人没有去实现,应该难度不是很大。那对于测试比较熟悉的我们,怎么使用jmeter工具来提取呢?

我的思路是这样的:

1.把原本的jtl文件只能在查看结果树的请求中看到报文,转变为使用BeanShell发送请求,可以在查看结果树返回中看到所有的结果。

Jmeter怎么获取jtl文件中所有的请求报文Jmeter怎么获取jtl文件中所有的请求报文

2.在查看结果树中,已经可以看到响应了,返回的是全部的原jtl文件内容,提取其中的报文就可以使用正则表达式,边界值提取器,得到自己想要的了,确定好请求的左右边界,匹配数字写-1,就是可以获取全部符合要求的报文了。

简单来讲,就是把jtl文件后缀改为txt,在jmeter中使用beanshell取样器中写代码,读取文件,并把读取结果放到Jmeter变量中,使用调试取样器就可以看到结果。

Jmeter怎么获取jtl文件中所有的请求报文

3.这个时候获取data数据,不能简单使用${data}了,可以看做是综合的结果,获取时需要使用到ForEach控制器,因为多个jtl不能确定里边有多少个请求需要提取,所以循环的结束字段${data_matchNr}。

Jmeter怎么获取jtl文件中所有的请求报文

4.最后一步,获取变量并输出,因为之前输出时xml格式的报文进行了转义,这边做了一个还原,使用lang3包中的固定方法就可以实现,代码如下:

Jmeter怎么获取jtl文件中所有的请求报文

最终输出的txt文件,换行符隔开,可自行调整,然后用于性能测试脚本参数化,如下:

Jmeter怎么获取jtl文件中所有的请求报文

 jtl文件较多,要进行路径参数化,把整个脚本内容放在一个事物控制器中,防止多线程下,获取到不同的结果,运行设置相应多的线程处理就可以了。

到此,相信大家对“Jmeter怎么获取jtl文件中所有的请求报文”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI