10- JMeter5.1.1 工具快速入门
什么是JMeter
JMeter是Apache组织开发的开源软件,由Java语言实现。
主要用于软件系统性能测试,他最初被设计用于web测试,后来被扩展到其他领域。
Jmeter特点
http://www.51testing.com/html/34/505934-861655.html
java运行环境安装
下载jdk:https://www.oracle.com/technetwork/java/javase/downloads/index.html
java环境变量配置
参考这篇文章:https://www.cnblogs.com/xch-yang/p/7629351.html
jmeter下载
下载地址:http://jmeter.apache.org/download_jmeter.cgi
下载完成以后,解压文件夹,进入目录:
点击jmeter.bat进入jmeter界面:
jmeter环境变量配置(可配可不配)
可自行百度,不配置不影响使用可以忽略此步骤。
测试计划:
在展开性能测试的之前,我们要书写一份性能测试计划,主要包括一下几个点。
测试计划:测试对象(你要测试的对象),测试人员(我们自己) , 测试目标(性能指标) 总结
jmeter使用:
线程属性:
线程属性:
调度器:
点击调速器,可以进行持续时间设置,这里设置为30S,意思是线程一共要跑30s,然后结束。持续时间为5S意思为,点击开始执行按钮后,先不执行,五秒以后再执行。
我们找到多少人去访问你的程序,进行压力测试,那么我们应该在哪儿去添加你的程序呢?这个时候我们引入取样器这个概念。
取样器(Sampler):动作性元素
代表一次请求-响应的过程,他们是测试用例中动作的发起者,是测试用例的主题元素。
JMeter根据不同的应用预制了很多种动作元素,如果用户觉得仍然不够用设置可以用BeanShell 写自己的动作。
比如HTTP Request Sampler , FTP Request Sampler , JDBC Request Sampler等。
每一种不同类型的 Sample可以根据设置的参数向服务器发出不同类型的请求。
红色部分就是我们可以进行测试的类型,一般我们测试都是HTTP协议,这是我们访问百度一个请求:
如果上图没有看懂,建议复习下HTTP协议:https://www.cnblogs.com/Chamberlain/p/11064680.html
添加监听器
如果查看上面请求的结果呢,这个时候我们只需要添加监听器就可以了。
这些就是jmeter的监听器,常用的有 查看结果树 , 聚合报告等。我们逐一添加如下:
查看结果树:
聚合报告:
聚合报告各项参数解读:
Samples:样本数,即运行次数
Average:平均响应时间
Median:中位数,50%响应时间小于此值
90%line:90%响应时间小于此值
Min:最短响应时间
Max:最大响应时间
Error:未命中数/比率,即错误比率
Throughput:吞吐量——每秒完成请求事务数(可以理解成TPS或者QPS)
Kb/sec:每秒接收数据量
添加断言
当有一个请求,服务端会有响应,我们要检查响应结果是否正确,可以用肉眼去看,但是当工作量大的时候,我们不可能一个个看,这个时候需要断言。
我们一般添加 “响应断言”:
我们在测试模式输入框,输入baidu就是验证响应的内容有没有baidu,这个时候在运行一次,然后点击查看结果树。
错误的断言
这个时候我们把添加的断言随便输入杂乱的数据:
这个时候再运行一次,然后查看结果树:
这个时候你会发现HTTP请求编程红色了,这就表示断言失败,响应结果不包含你刚才输入的断言。
300个并发(一点点加 慢慢调试)
如果超时有个超时1000ms时间限制
聚合报告解读
Samples:样本数,即运行次数
Average:平均响应时间
Median:中位数,50%响应时间小于此值
90%line:90%响应时间小于此值
Min:最短响应时间
Max:最大响应时间
Error:未命中数/比率,即错误比率
Throughput:吞吐量——每秒完成请求事务数(可以理解成TPS或者QPS)
Kb/sec:每秒接收数据量
10- JMeter5.1.1 工具快速入门的更多相关文章
- 版本控制工具Git工具快速入门-Linux篇
版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...
- 版本控制工具Git工具快速入门-Windows篇
版本控制工具Git工具快速入门-Windows篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近在学习Golang语言,之前的开发环境在linux上开发的,后来由于办公用的是w ...
- MyBatis-Plus工具快速入门
MyBatis-Plus官方文档:http://mp.baomidou.com/#/quick-starthttp://mp.baomidou.com/guide/#%E7%89%B9%E6%80%A ...
- sqlDeveloper工具快速入门
场景 我们在连接oracle数据库的时候 常用方式一般有以下三种: pl/sql deceloper navicat sqlDeveloper 其中, pl/sql developer是最经典的,也是 ...
- 优雅高效的MyBatis-Plus工具快速入门使用
目前正在维护的公司的一个项目是一个ssm架构的java项目,dao层的接口有大量数据库查询的方法,一个条件变化就要对应一个方法,再加上一些通用的curd方法,对应一张表的dao层方法有时候多达近20个 ...
- MyBatis-Plus工具快速入门使用
MyBatis-plus有什么特色 1.代码生成 2.条件构造器 对我而言,主要的目的是使用它强大的条件构建器. 快速使用步骤: 1.添加pom文件依赖 <dependency> < ...
- AngularJS快速入门指南01:导言
AngularJS使用新的attributes扩展了HTML AngularJS对单页面应用的支持非常好(SPAs) AngularJS非常容易学习 现在就开始学习AngularJS吧! 关于本指南 ...
- 【荐】PHP采集工具curl快速入门教程
为什么要用CURL? CURL(Client URL Library Functions)是一个利用URL语法在命令行方式下工作的文件传输工具.它支持很多协议:FTP, FTPS, HTTP, HTT ...
- JDBC基础:JDBC快速入门,JDBC工具类,SQL注入攻击,JDBC管理事务
JDBC基础 重难点梳理 一.JDBC快速入门 1.jdbc的概念 JDBC(Java DataBase Connectivity:java数据库连接)是一种用于执行SQL语句的Java API,可以 ...
随机推荐
- 2021-2-28:调用 System.gc() 后究竟发生了什么?
首先,根据 DisableExplicitGC 这个 JVM 启动参数的状态,确定是否会 GC,如果需要 GC,不同 GC 会有不同的处理. 1. G1 GC 的处理 如果是 System.gc() ...
- 如何使用 Github Actions 自动抓取每日必应壁纸?
如何白嫖 Github 服务器自动抓取必应搜索的每日壁纸呢? 如果你访问过必应搜索网站,那么你一定会被搜索页面的壁纸吸引,必应搜索的壁纸每日不同,自动更换,十分精美.这篇文章会介绍如何一步步分析出必应 ...
- 基于Hi3559AV100的视频采集(VDEC-VPSS-VO)整体框图设计
下面给出基于Hi3559AV100的视频采集整体设计,具体设计将在后续给出: 图形采集端整体设计 Hi3559AV100软件程序按结构划分可分为4层,第一层是硬件驱动层,第二层是操作系统层,第三层是媒 ...
- MySQL全面瓦解25:构建高性能索引(案例分析篇)
回顾一下上面几篇索引相关的文章: MySQL全面瓦解22:索引的介绍和原理分析 MySQL全面瓦解23:MySQL索引实现和使用 MySQL全面瓦解24:构建高性能索引(策略篇) 索引的十大原则 1. ...
- 1x1卷据层的作用
1. 尽管1x1的卷据不会捕捉空间特征(spatial features/patterns,直观点说就是2D平面图的纹理特征),但是他们能很好基于通道(channel-wise/along the d ...
- Ingress-nginx工作原理和实践
本文记录/分享 目前项目的 K8s 部署结构和请求追踪改造方案 这个图算是一个通用的前后端分离的 k8s 部署结构: Nginx Ingress 负责暴露服务(nginx前端静态资源服务), 根据十二 ...
- sqli-labs系列——第六关
less6 这个本质上跟第五关相同都是使用报错注入,这一关使用的是双引号闭合 还是使用updatexml()这个函数 ?id=1" union select updatexml(1,conc ...
- CPython-对象/类型系统
Python中一切皆对象,包括实例对象和类型对象,如整数.浮点数.字符串是实例对象,整数类型.浮点数类型.字符串类型是类型对象. # [Python]>>> n=10 >> ...
- 以Aliyun体验机为例,从零搭建LNMPR环境(上)
使用云服务器搭建 Web 运行环境,尤其是搭建常见的 LNMPR(Linux+Nginx+MySQL+PHP+Redis) 环境,对于开发人员是必备的职场基本技能之一.在这里,借着搭建我的" ...
- 自动获取IMC系统所有网络设备资产信息
1 #coding=utf8 2 3 """ 4 CMDB接口调用 5 """ 6 import csv 7 import json 8 i ...