Jmeter系列之no-gui模式
VOL 141
15
2020-07
今天距2021年169天
这是ITester软件测试小栈第141次推文
本文1960字,阅读约需6分钟
Jmeter系列之接口自动化实战,主要介绍Jmeter接口自动化需要哪些控件、接口自动化实战及总结。
以下主要介绍为什么使用NO-GUI、NO-GUI参数说明、NO-GUI实战生成jtl结果及html报告。
一
为什么使用NO-GUI?
- GUI(图形化界面)消耗更多资源,如CPU和内存,容易使压力机达到瓶颈,从而影响测试结果。
- GUI(图形化界面)不支持大型的负载测试和性能测试,并发较大时,JMeter 会崩溃。
- NO-GUI(命令行)可以把脚本配置到Jenkins上实现持续集成,做成自动化测试。
二
操作步骤
①配置jmeter环境变量,可以参照文章Jmeter系列之简介与环境安装。
②在GUI模式下,调试好自动化脚本。
③在命令行运行自动化脚本。
④在JMeter 中导入jtl文件或浏览器查看生成的html报告。
三
NO-GUI参数介绍
命令行参数较多,这里列举常用的一些参数。
-h 帮助 -> 打印出有用的信息并退出
-n 非 GUI 模式 -> 在非 GUI 模式下运行JMeter
-t 测试文件 -> 要运行的 JMeter 测试脚本文件
-l 日志文件 -> 记录结果的文件
-r 远程执行 -> 在Jmter.properties文件中指定的所有远程服务器
-H 代理主机 -> 设置 JMeter 使用的代理主机
-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号
-e :在脚本运行结束后生成html报告
-o :用于存放html报告的目录
例如:jmeter -n -t test1.jmx -l result.jtl
四
NO-GUI生成jtl结果文件
① 新建文件夹,scrip存放jmx脚本文件,result存放jtl文件,report存放html报告文件。
②Windows下,快捷键win+R,输入cmd,打开命令行模式。
③切换到存放脚本的目录下。
④ 输入命令:jmeter -n -t auto_test.jmx -l ..resultresult.jtl。
命令解释:
-n 在非 GUI 模式下运行 JMeter。
-t auto_test.jmx 运行auto_test.jmx的测试脚本。
-l result.jtl 运行结果记录在result.jtl中。
⑤ 运行成功后,在result目录下,会生成result.jtl文件。
⑥打开jmeter界面模式,Test Plan右键,创建View Results Tree及Summary Report。
⑦ 分别在View Results Tree及Summary Report选择生成的result.jtl,选择完后会展示结果信息。
五
NO-GUI生成html测试报告
1
环境要求
① Jmeter3.0版本之后开始支持动态生成测试报表;
② JDK版本1.7以上;
③ 需要JMX脚本文件。
2
命令行生成报告
① 在脚本文件路径下输入命令:jmeter -n -t auto_test.jmx -l ..resultresult.jtl -e -o ..reportreport20200628。
② 运行成功后,会在report目录下生成测试报告。
③ 用浏览器打开index.html,效果如下:
注意:每次执行命令都要先去目录下清空报告和jtl文件。
以上
That‘s all
- mvn编译的时候一个破错误,google只有3个结果maven : Failed to install metadata project Could not parse metadata maven-
- 读书|《Mastering Machine Learning with Python in Six Steps》
- 几种简单的文本数据预处理方法
- Fiddler中显示IP方法
- readlink: command not found 解决方案
- Java 并发编程系列: CountDownLatch (上厕所的案例)
- 详解ANGULAR2组件中的变化检测机制(对比ANGULAR1的脏检测)
- 如何快速查看github代码库中第一次commit的记录
- 更换包管理工具npm为yarn
- 【精选】使用Cryptory分析影响加密货币价格的因素(区块链系列3)
- React -- 组件间通信
- 图片和视频防盗链简单介绍
- 对比cp和scp命令 将数据从一台linux服务器复制到另一台linux服务器
- laravel—用Migration的操作数据库
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 团体程序设计天梯赛-练习集 L1-003 个位数统计
- 团体程序设计天梯赛-练习集 L1-004 计算摄氏温度
- 团体程序设计天梯赛-练习集 L1-007 念数字
- 团体程序设计天梯赛-练习集 L1-008 求整数段和
- K8s多租户场景下的多层级namespace规则解析
- 团体程序设计天梯赛-练习集 L1-010 比较大小
- 团体程序设计天梯赛-练习集 L1-012 计算指数
- 团体程序设计天梯赛-练习集 L1-013 计算阶乘和
- 团体程序设计天梯赛-练习集 L1-036 A乘以B
- 团体程序设计天梯赛-练习集 L1-015 跟奥巴马一起画方块
- 团体程序设计天梯赛-练习集 L1-011 A-B
- vuepress引入vue-qr组件后build报错navigator is not defined问题
- 团体程序设计天梯赛-练习集 L1-022 奇偶分家
- k8s——针对有状态服务实现数据持久化
- 团体程序设计天梯赛-练习集 L1-017 到底有多二