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

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

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

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

我的思路是这样的:

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

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

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

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

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

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

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

相互学习,共同进步!

Jmeter获取jtl文件中所有的请求报文相关推荐

  1. jmeter---如何获取.jtl文件

    一.获取.jtl文件 使用非 GUI 模式,即命令行模式运行 JMeter .执行完成jmeter后,会生成jtl文件. 1.1. 命令介绍 1)先cmd进入到jmeter的bin文件目录下(这里是 ...

  2. jmeter之jtl文件解析(生成测试报告)

    我们知道命令行的方式执行完成jmeter后,会生成jtl文件,里面打开后就是一行行的测试结果, <httpSample t="1" lt="1" ts=& ...

  3. 如何获取.JTL文件

    一.获取.jtl文件 使用非 GUI 模式,即命令行模式运行 JMeter .执行完成jmeter后,会生成jtl文件. 1.1. 命令介绍 1)先cmd进入到jmeter的bin文件目录下(这里是 ...

  4. Jmeter之.jtl文件解析

    我们知道命令行的方式执行完成jmeter后,会生成jtl文件,里面打开后就是一行行的测试结果. <httpSample t="1" lt="1" ts=& ...

  5. JTLParser-linux上jmeter的jtl文件二次分析

    解析JMeter的JTL文件 2013年01月30日 ⁄ 综合 ⁄ 共 1452字 ⁄ 字号 小 中 大 ⁄ 评论关闭 http://code.google.com/p/xtoolkit/wiki/J ...

  6. python遍历文本文件统计字符个数_用python获取txt文件中关键字的数量

    缘起: 开发人员需要tomcat中一个项目在一个月的访问请求量,因其他原因只剩下查找tomcat请求日志的方法获取,刚好最近在学习python,于是就用python摸索了下: 大体思路: 1.把相应t ...

  7. 【Groovy】Xml 反序列化 ( 使用 XmlParser 解析 Xml 文件 | 获取 Xml 文件中的节点和属性 | 获取 Xml 文件中的节点属性 )

    文章目录 一.创建 XmlParser 解析器 二.获取 Xml 文件中的节点 三.获取 Xml 文件中的节点属性 四.完整代码示例 一.创建 XmlParser 解析器 创建 XmlParser 解 ...

  8. 如何用迅捷PDF转换器获取PDF文件中的图片

    工作中有的人喜欢将文档保存为PDF格式,因为PDF格式安全性和兼容性都比较高,但是在使用PDF文档的时候,也会一些小问题,比如说,PDF文档过大,想要查看文档中的图片,就需要耗费不少的时间,那么怎么才 ...

  9. 获取json文件中的URL

    1.实例代码为实现获取json文件中的图像: # -*- coding:utf-8 -*- import requests import re import osdef get_page_url(ur ...

最新文章

  1. ubuntu9.10上安装jdk5
  2. 选择排序(Select_Sort)
  3. 网关服务器怎么配置文件,网关服务器怎么配置文件
  4. 运维人,你应该了解的三张武功心法图(转载)
  5. uft自动化测试工具安装步骤_自动化测试灵魂三问:是什么、为什么和做什么
  6. Synchronized底层实现--概论
  7. Ubuntu18.04-安装opencv3.2.0_contrib
  8. PHP最彻底的退出登录,清除session、cookie的代码
  9. SSH 远程管理软件 SecureCRT 下载安装教程
  10. 快速排序时间复杂度数学证明
  11. 基于Javaweb的酒店客房预订管理系统
  12. animation动画--跳动
  13. JAVA7新特性1---groovy
  14. 语义分析(Semantic Parsing)调研
  15. 这届618:掀起直播盛世
  16. 柠檬班学习性能测试day2_性能测试入门(0519)
  17. 了解react-hook以及State Hook
  18. 某校2019专硕编程题-队列
  19. HFUUOJ1023 闷声发大财 概率dp
  20. SpringCloudStream——RabbitMQ 手动ACK,Channel 参数为空?

热门文章

  1. 线性回归之梯度下降法原理介绍
  2. Postgresql 压力测试 pgbench 与 准不准
  3. ZYNQ-AXI_VDMA IP简介
  4. hadoop 红色旅游景点分析系统-计算机毕设 附源码91858
  5. 音频修复插件 – iZotope RX 7 Audio Editor Advanced 7.01 win+mac
  6. mksh linux
  7. 在微型计算机里1mb等于,在计算机中,1MB等于多少字节?
  8. Nginx正向代理任何域名的实现
  9. localhost is already in use
  10. react native Android上角标实现