当前位置: 首页 > news >正文

性能测试jmeter命令行运行+html测试报告解读

windows下打开jmeter的运行窗口,可以看到提示不要用GUI模式进行负载测试,如果要用负载测试,用cli模式,因为GUI模式运行jmeter比较消耗性能。

 命令行模式

windows下找到jemeter所在文件夹,打开cmd输入命令。

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

 如

jmeter -n -t E:\a.jmx -l test.jtl -e -o test

 用于运行一个JMeter测试计划并生成报告。各个参数的解释如下:

  • 'jmeter': 这是Apache JMeter工具的命令行启动器。
  • '-n': 这个参数表示使用非GUI模式运行。
  • '-t E:\a.jmx': 这个参数指定了要运行的测试计划的路径。在这个例子中,测试计划在'E:\'目录下,名为'a.jmx'。
  • '-l test1.jtl': 这个参数指定了一个结果文件,该文件包含了上次运行测试的结果。在这个例子中,结果文件名为'test.jtl'。
  • '-e': 这个参数表示在运行测试后生成一个扩展结果文件。
  • '-o test': 这个参数表示将结果输出到指定的目录。在这个例子中,输出目录名为'test'。

测试过程中会输出请求信息,表示在该统计节点,有多少请求,吞吐量是多少,平均,最大,最小响应时间是多少,活跃线程数是多少,有多少异常。(其实就是聚合报告第一行的total数据跟随时间的变化,)

 运行结束后,会在当前文件夹生成test.jtl和文件夹test。

jtl文件存储的是测试结果,根据这个测试结果生成测试报告。

在test文件夹可以找到html格式的测试报告

测试报告

Dashboard

 测试和报告信息

显示源文件,测试开始和结束时间。

请求概要

 可以看到100%PASS

APDEX

应用性能指数

Toleration threshold 指的是一个应用程序在运行过程中,用户对某种性能指标(如响应时间)可接受的最低限度的阈值。如果应用程序的性能超过这个阈值,用户可能会感到不满或者不耐烦,从而影响用户体验。 

frustration threshold 指的是消费者在面对商品或者服务不能满足其需求时的临界点,一旦超过这个临界点,消费者可能会选择放弃购买或者寻找其他替代品。

这里给出了T和F,一个是500ms,一个是1500ms,并给出了Apdex值。

Apdex(应用程序性能指数)是由公司联盟开发的开放标准,用于测量计算中软件应用程序的性能。其目的是通过指定一种统一的方式来分析和报告测量的性能满足用户期望的程度,apdex为0表示没有用户满意,apdex为1表示所有用户满意。

根据这个值,可以找出哪些接口的性能低。

聚合报告

同jmeter GUI方式监听器-聚合报告表格,列出每个接口响应时间,吞吐量,发送接收到的字节数。

 Error

error部分会列出失败的请求信息。

如下可以看到该接口有多少个失败的,失败内容是什么。

 图表

Over Time

响应时间变化

平均响应随时间的变化趋势,只有测试是持续时间才会显示,如果是单次测试,只会显示1个点。

根据这个图可以看到接口1RT很短,接口2的RT影响了该事务的RT。

响应时间百分比变化 (成功的响应)

 显示最大,最小,90%,95%,55%响应时间随时间的变化。

如图后期响应时间大幅降低,在100ms多,是因为有个接口报错了。

 活跃线程数变化

线程数随时间的变化,从图可以看出,该测试为固定线程5个。

 字节吞吐量变化

 连接时间变化

吞吐量

Hits Per Second

每秒测试计划所产生的点击服务器的次数。

Codes Per Second

每秒收到的状态码数量

 Transactions Per Second

每秒事务数

Total Transactions Per Second

 

 Response Time Vs Request

Latency Vs Request 

响应时间

 响应时间百分比

响应时间概览

 响应时间和线程数

响应时间分布

 

相关文章:

性能测试jmeter命令行运行+html测试报告解读

windows下打开jmeter的运行窗口,可以看到提示不要用GUI模式进行负载测试,如果要用负载测试,用cli模式,因为GUI模式运行jmeter比较消耗性能。 命令行模式 windows下找到jemeter所在文件夹,打开cmd输入命令。 jmeter -n…...

Service Mesh和Kubernetes:加强微服务的通信与安全性

文章目录 什么是Service Mesh?Service Mesh的优势1. 流量控制2. 安全性3. 可观测性 Istio:Service Mesh的领军者流量管理安全性可观测性 Linkerd:轻量级Service Mesh流量管理安全性可观测性 Istio vs. Linkerd实际应用结论 🎈个人…...

『吴秋霖赠书活动 | 第三期』《Python asyncio并发编程》

文章目录 1. 写在前面2. 浅谈asyncio3. Python asyncio并发编程 不再受限于!asyncio异步让你的程序在高并发时翱翔自如! 声明:赠书活动是博主与出版社达成合作,只属于粉丝的专属福利 本期书籍:《Python asyncio并发编程…...

数字孪生在工厂领域的应用和优势

工厂运营一直以来都是高度复杂且信息密集的任务。然而,随着数字孪生技术的出现,工厂领域正在经历一场前所未有的革命。本文将介绍数字孪生在工厂领域的应用,以及它如何重新定义了制造业的运营方式。 什么是数字孪生? 数字孪生是…...

如何写代码实现VRP问题中车辆容量限制及时间窗要求(python)

问题研究背景 使用遗传模拟退火算法求解如下10个卸货点的VRPTW问题。为了使研究的问题更加有意义,本人将时间限理解为服务点一天的具体可以允许配送的时间。 如果不要求车辆从配送中心出发的时间是统一的并且为0时刻,那么就默认第一个配送节点是一定能赶…...

C语言求解汉诺塔问题

完整代码: /*Hanoi(汉诺)塔问题。这是一个古典的数学问题:古代有一个梵塔,塔内有 3 个 座 A,B,C,开始时 A 座上有 64 个盘子,盘子大小不等,大的在下,小的在上。有一个老…...

安装LSF

安装需求 基本硬件配置建议: CPU 4核或以上(LSF 没有最低 CPU 需求,此处只是建议)内存 8G或以上( 当没有作业在运行时, Linux x86-64 上集群中的 LSF 守护程序将使用大约 488 MB 内存。)交换…...

百度的新想象力在哪?

理解中国大模型,百度是一个窗口。这个窗口的特殊性不仅在于变化本身,而是在于百度本身就是那个窗口。 作者|皮爷 出品|产业家 沿着首钢园北区向西北步行10分钟,就能看到一个高约90米的大跳台,在工业园钢铁痕迹的印衬下&#…...

Linux使用rpm包安装mysql5.7

以前安装过mysql 前言:检查以前是否装有mysql rpm -qa|grep -i mysql安装了会显示:   bt-mysql57-5.7.31-1.el7.x86_64 停止mysql服务和删除之前安装的mysql rpm -e bt-mysql57-5.7.31-1.el7.x86_64查找并删除mysql相关目录 find / -name mysql/va…...

LLDB 三种输出方式 对比及原理探索

前言 当我们的项目过大时,就会使我们项目的编译耗时过长,如何在项目运行时进项代码调试,熟练使用LLDB就可以解决这个难题,大幅度提高我们的开发效率。 什么是 LLDB? LLDB是英文Low Lever Debug的缩写,是XCode内置的为我们开发者提供的调试工具,它与LLVM编译器一起,存…...

基于架构软件设计-架构真题(五十八)

“41”视图主要描述系统逻辑架构。其中()视图用于描述对象模型,并说明系统应该为用户提供哪些服务。 过程开发物理逻辑 解析: “41”有逻辑视图、过程视图、物理视图、开发视图和架构的描述。 逻辑视图:设计的对象…...

jvm实现的锁优化

目录 轻量级锁 轻量级锁的工作流程 轻量级锁的解锁 偏向锁 偏向锁的流程: 偏向锁和轻量级锁机区别: 其他优化 自旋锁和自适应自旋锁 锁消除 锁粗化 轻量级锁 “轻量级” 是相对于使用操作系统互斥量来实现的传统锁而言的,因此传统的…...

JMeter做http接口功能测试

1. 普通的以key-value传参的get请求 e.g. 获取用户信息 添加http请求;填写服务器域名或IP;方法选GET;填写路径;添加参数;运行并查看结果。 2. 以Json串传参的post请求 e.g. 获取用户余额 添加http请求;…...

【安全体系架构】——SIEM架构

什么是SIEM架构? 安全信息与事件管理(SIEM)架构是一种综合性的安全管理系统,旨在监控、检测、报告和应对安全事件和威胁。SIEM系统集成了多个安全功能,包括日志收集、事件管理、威胁检测和响应,以提供组织…...

nginx acess日志找不到访问记录问题

这个是AI给出的可能得原因: 如果在nginx中找不到你的访问记录,但你确实进行了访问并得到了返回,可能有以下原因: 日志文件位置设置不正确:请确保你的nginx配置文件中的access_log指令指向了正确的日志文件路径。日志文…...

canvas使用

canvas使用 1 canvas绘制基本 1 概念 HTML5<canvas>元素用于图形的绘制&#xff0c;区别于css,它的绘制通过javascript来完成绘制的 <canvas>标签只是图形容器&#xff0c;必须使用及保本来绘制图形 Canvas API主要聚焦与2D图形。同时<canvas>元素的Web…...

PMP认证考试证书领取的通知

各位考生&#xff1a; 2022年6月、7月、8月PMI认证考试证书领取工作已经开始&#xff0c;您可通过以下两种方式领取证书&#xff1a; 1.联系本人所在培训机构&#xff0c;通过培训机构向考点统一代领。 2.在2023年10月20日-10月31日内&#xff0c;登录本网站报名系统个人账户…...

华为云HECS云服务器docker环境下安装nacos

华为云HECS云服务器&#xff0c;安装docker环境&#xff0c;查看如下文章。 华为云HECS安装docker-CSDN博客 一、拉取镜像 docker pull nacos/nacos-server二、宿主机创建挂载目录 执行如下命令&#xff1a; mkdir -p /usr/local/nacos/logs mkdir -p /usr/local/nacos/con…...

Oracle数据库修改序列,Oracle中的主键值和序列中的值对应不上时的处理方式

select max(stu.id) maxid from student stu; //查询student表中id的最大值select XXX_SEQ.nextval from dual; //查询student表中id对应序列XXX_SEQ的下一个值alter sequence XXX_SEQ increment by 1000; //将序列XXX_SEQ步长改为1000&#xff0c;对应 student表中id的最大值s…...

Verilog基础:避免混合使用阻塞和非阻塞赋值

相关阅读 Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html?spm1001.2014.3001.5482 “避免在一个always块中混杂阻塞赋值和非阻塞赋值”&#xff0c;这条原则是著名的Verilog专家Cliff Cummings在论文SUNG2000中提出的&#xff0c;这个观点在公众讨…...

04、MySQL-------MyCat实现分库分表

目录 九、MyCat实现分库分表1、分库分表介绍&#xff1a;横向&#xff08;水平&#xff09;拆分**垂直分表**&#xff1a;水平分表&#xff1a;**分库分表** 纵向&#xff08;垂直&#xff09;拆分分表字段选择 2、分库分表操作&#xff1a;1、分析图&#xff1a;2、克隆主从3、…...

开源软件-禅道Zentao

禅道Zentao 简介漏洞复现SQL注入漏洞**16.5****router.class.php SQL注入** **v18.0-v18.3****后台命令执行** 远程命令执行漏洞&#xff08;RCE&#xff09;后台命令执行 简介 是一款开源的项目管理软件&#xff0c;旨在帮助团队组织和管理他们的项目。Zentao提供了丰富的功能…...

Linux生产者消费者模型

生产者消费者模型 生产者消费者模型生产者消费者模型的概念生产者消费者模型的特点生产者消费者模型优点 基于BlockingQueue的生产者消费者模型基于阻塞队列的生产者消费者模型模拟实现基于阻塞队列的生产消费模型 生产者消费者模型 生产者消费者模型的概念 生产者消费者模式就…...

【Qt-20】Qt信号与槽

一、什么是信号和槽 信号是特定情况下被发射的事件&#xff0c;发射信号使用emit关键字&#xff0c;定义信号使用signals关键字&#xff0c;在signals前面不能使用public、private、protected等限定符&#xff0c;信号只用声明&#xff0c;不需也不能对其进行定义实现。另外&am…...

“智能+”时代,深维智信如何借助阿里云打造AI内容生成系统

云布道师 前言&#xff1a; 随着数字经济的发展&#xff0c;线上数字化远程销售模式越来越成为一种主流&#xff0c;销售流程也演变为线上视频会议、线下拜访等多种方式的结合。根据 Gartner 报告&#xff0c;到 2025 年 60% 的 B2B 销售组织将从基于经验和直觉的销售转变为数…...

selenium 自动化测试——WebDriver API

控制浏览器 控制浏览器窗口大小&#xff1a;set_window_size()方法 设置全屏模式下运行&#xff1a;maximize_window()方法 from selenium import webdriver from selenium.webdriver.common.by import By import timedriver webdriver.Chrome() driver.get("http://w…...

【实战】学习 Electron:构建跨平台桌面应用

文章目录 一、Electron 简介二、Electron 的优势1. 学习曲线平缓2. 丰富的生态系统3. 跨平台支持4. 开源和社区支持 三、Electron 的使用1. 安装 Node.js2. 安装 Electron3. 创建项目4. 初始化项目5. 安装依赖6. 创建主进程文件7. 创建渲染进程文件8. 打包应用程序9. 运行应用程…...

Python开发之二维数组空缺值的近邻填充

Python开发之二维数组空缺值的填充 1 实现一&#xff0c;任意位置填充2 实现二&#xff0c;填充内部3 实现三&#xff0c;只填充边缘&#xff0c;不包括四个角 前言&#xff1a;主要实现二维数据里面某一个数据的缺失&#xff0c;用缺失的近邻数据进行均值填充&#xff0c;可以…...

vue使用pdf 导出当前页面,(jspdf, html2canvas )

需要安装两个插件 npm install html2canvas jspdfyarn add html2canvas jspdf<div class"app-container" id"pdfPage"><!--这个放你需要导出的内容--> </div><el-button size"mini" click"onExportPdf">导出…...

【oracle删除表 回滚操作】

oracle数据回滚 oracle表在被误删后&#xff0c;一定时间内&#xff0c;可以采取以下方法进行恢复: 1、先查询数据库当前时间 select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) from dual;2、通过当前时间往前推时间&#xff0c;选择想要恢复的时间点 select * from 表名…...