一、对数据库进行压测
1、将需要用到的链接mysql的jar包放到jmeter的lib文件夹中
2、添加线程组,添加JDBC Connection Configuration,进行配置,填写数据库连接的用户名、密码、driver class、数据库地址、连接池名称3、添加 JDBC Request,填写连接池名称、SQL语句,选择Query Type,查询语句、更新语句、所有语句、预编译查询语句(长时间执行效率更高,支持占位符)
4、添加查看结果树,如果是进行压测的话需要添加聚合报告,禁掉查看结果树
5、 运行测试,查看查询结果6、设置集合点、线程数、循环控制器循环次数即可执行压测试)
二、Jmeter获取登录的token_u014516643的博客-CSDN博客_jmeter提取token
三、正则表达式提取器——关联
因为在测试过程过有些数据是经常发生变化的,要获取并使用这些数据,就要使用关联。
比如: 用户登录后,session信息都不同,有些操作要使用session,因为session里面会有userId、openId、businessId等一些信息,就需要将这个动态的信息保存下来。 还有经常遇到的场景,第二个请求提交的参数要从第一个请求的返回数据中获取。
1、右键点击添加正则表达式提取器
2、引用名称 输入 要查询的参数名称,输入正则表达式、模板、匹配数字:0代表正则表达式结果组中随机,1代表全部、缺省值:当引用不对时显示传递的信息,通常写一个ERROR。
四、Json Extractor提取器——关联 ,当传数据返回的是一个Json格式用的
进入JSON Extractor页面后,填写动态变化的参数名称、json表达式、匹配哪个,可为空即默认第一个、未取到值的时候默认值
五、用户参数——参数化(模拟设置多个变量、多个用户请求接口)
右键点击添加用户参数,可添加多个用户或者参数
六、参数化 —— 用户自定义变量
1、右键点击添加 “用户自定义变量”,添加要参数化的参数名称、参数值
2、test plan执行过程中不能发生取值的改变,因此一般仅将test plan中不需要随迭代发生改变的参数(只取一次的参数)
七、使用CSV文件——参数化
1、右键点击添加CSV数据文件设置,选择文件、设置编码格式、变量名。。。
2、引用参数的地方的地方,使用${变量名}这种格式3、然后运行,查看结果七、性能测试
八、性能测试
1、添加线程组,设置线程数、循环次数、Ramp-Up
2、添加http请求3、添加聚合报告,来查看测试结果
4、分析测试报告。一般而言,性能测试中我们需要重点关注的数据有: #Samples 请求数,Average 平均响应时间,Min 最小响应时间,Max 最大响应时间,Error% 错误率及Throughput 吞吐量。
聚合报告参数详解:
- Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
- Samples:请求数——表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100
- Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,以Transaction 为单位显示平均响应时间
- Median:中位数,也就是 50% 用户的响应时间
- 90% Line:90% 用户的响应时间
- Min:最小响应时间
- Max:最大响应时间
- Error%:错误率——错误请求数/请求总数
- Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
- KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec
九、响应断言——断言
用于检查测试中得到的响应数据等是否符合预期,用以保证性能测试过程中的数据交互与预期一致。
- 添加响应断言。选择要检查的项,例如响应报文、响应头,选择模式匹配规则(Substring:返回结果是指定结果的字串)
- 输入需要匹配的字符串此处对于访问Baidu首页,需要设置匹配的字符串为“百度一下,你就知道”,表示返回的文本内容若包含有“百度一下,你就知道”,则就算Pass
3、添加:断言结果、查看结果树
4、运行Test Plan中的线程组,进行断言检查,以下可观察到响应数据中是包含所指定的验证字符串,Pass
十、持续时间断言, 判断是否在给定的时间内返回响应结果
右键添加,设置响应时间设置(单位:毫秒)、选择适用范围(Main sample only:仅作用于父节点取样器)
十一、脚本录制(APP端)
1.保证pc端、移动端在同一网络下
2.右键点击TestPlan(测试计划),-添加HTTP代理服务器
3.将 目标控制器 选择为 TestPlan》HTTP代理服务器, 端口是8888
4.打开移动端,进入网络,修改网络代理的ip(cmd---->ipconfig,查看WiFi环境下单ipv4)、端口
5.点击jmeter中的 启动,开始录制移动端 6.运行移动端的软件
十二、对接口进行压测
a.新建一个线程组。
b. 设置线程组参数。这里配置为:100个线程,同时启动,循环一次。
c. 新增http请求默认值。
d. 添加要压测的http请求。这里的 IP、端口不需要设置,会使用步骤c中设置的默认值,只需设置请求路径Path即可
e. 新增监听器,用于查看压测结果。这里添加三种:聚合报告、图形结果、用表格查看结果,区别在于结果展现形式不同。
f. 点击运行按钮开始压测,并查看结果。
十三、jmeter性能测试报告
- 性能测试背景
- 性能测试目标
- 性能测试范围
- 性能名词术语约定
- 被测环境系统架构
- 被测环境软硬件配置: 主机 数量 用途 配置 系统
- 负载机 软硬件配置
- 测试数据
- 硬件性能指标
- 测试进度 开始时间 结束时间 测试类别 测试目的 测试结果 测试报告 测试分析 等....