一、下载启动JMeter
1.1 下载JMeter
进入JMeter官网进行下载https://jmeter.apache.org/
1.2 启动JMeter
解压JMeter压缩包后,进入解压后的目录,点击jmeter.bat
,启动JMeter
1.3 修改显示语言为中文
修改显示语言1.4 修改编码,解决返回中文乱码问题
1、打开安装目录,apache-jmeter-3.1/bin/jmeter.properties
文件
2、搜索sampleresult.default.encoding
关键字找到如下配置:
3、找到#sampleresult.default.encoding=ISO-8859-1
将注释去掉,
4、改成如下:sampleresult.default.encoding=UTF-8
二、压测抽奖功能
2.1 抽奖功能接口
完成抽奖功能需要按顺序调用以下接口:
-
登录接口:通过用户手机号码、短信验证码(测试环境短信码为固定的一个数)完成登录,获取到token。
-
抽奖报名接口:在header里设置登录接口获取到的token,调用报名接口,传抽奖活动ID参数,报名人ID由后台通过token获取到,不需要传。
-
抽奖接口:在header里设置登录接口获取到的token,调用抽奖接口,传抽奖活动ID参数,报名人ID由后台通过token获取到,不需要传。
2.2 创建测试计划
启动JMeter后,默认会打开一个Test Plan面板,将名称改成我们准备要做的抽奖服务压测
2.3 创建线程组
选中[抽奖服务压测],创建线程组
新建线程组
这次我们准备用两个用户的手机号来测试,因此线程数填2
配置线程组2.4 创建HTTP信息头管理器
本次测试的接口都是restful接口,我们将Content-Type
统一设定为application/json
选中[抽奖流程],创建创建HTTP信息头管理器
创建HTTP信息头管理器 配置HTTP信息头管理器
2.5 配置登录接口
2.5.1 创建登录HTTP请求
选中[抽奖流程],创建HTTP请求
创建HTTP请求 填写登录接口参数特别注意的是,mobile
参数不是固定写死的一个手机号码,而用的是一个变量${mobile}
,该变量的值从CSV文件中来。
2.5.2 创建CSV 数据文件设置
1、在本地目录下,新建一个txt文件,配置测试手机号码,第一行写mobile
,第二行开始写手机号码,用逗号结尾。正式执行压力测试时,该账号可以通过数据库批量导出,而不是手动填写。
2、选中[用户登录],创建CSV 数据文件设置
创建CSV 数据文件设置 配置创建CSV 数据文件设置2.5.3 创建JSON提取器,提取token
登录接口会返回授权token,我们需要将该token提取出来作为一个变量,提供给抽奖报名、抽奖接口使用。
创建JSON提取器 配置JSON提取器2.6 配置抽奖报名接口
2.6.1 创建抽奖报名HTTP请求
选中[抽奖流程],创建HTTP请求,配置抽奖报名参数
配置抽奖报名参数2.6.2 创建HTTP信息头管理器
选中[抽奖报名],创建HTTP信息头管理器,配置token
配置token2.7 配置抽奖接口
2.7.1 创建抽奖HTTP请求
选中[抽奖流程],创建HTTP请求,配置抽奖参数
配置抽奖参数2.7.2 创建HTTP信息头管理器
选中[抽奖],创建HTTP信息头管理器,配置token
配置token2.8 打开查看结果树
打开查看结果树2.9 测试计划整个效果
整个效果2.10 启动测试计划
选中[抽奖流程],点击启动按钮,通过查看结果树查看运行结果
启动测试 执行结果-登录 执行结果-报名 执行结果-抽奖
网友评论