前言
开始第一个Jmeter测试用例入门编写;使用Jmeter将上一章节的接口进行创建测试计划,初步理解“线程组”和“Sampler”的作用;并修复响应数据中文乱码问题;
线程组:就是一组线程,并发执行,每个线程可以认为是一个请求
第一个测试计划
Jmeter启动后,默认名称为“测试计划”,可进行修改;这里修改名称为“Jmeter5.x测试计划_1”
线程组(Thead Group)
用于模拟用户多线程请求,控制总体并发数;
测试用例名称右击操作:添加->threads->线程组
创建线程组并命名为“课程模块”;
说明:
线程数:虚拟用户数,一个虚拟用户占用一个进程或线程
Ramp-Up时间(秒):全部线程启动完成时长。如,线程数50,Ramp-Up时间10秒,表示50个线程会在10秒内都启动完成;50/10=5,每秒启动5个线程;
循环次数:每个线程发送请求的次数,如果此参数设置为2,线程数为50,则发送100(2*50)次请求;勾选永远将会一直循环请求下去,后期需要手动停止;
采样器(Sampler)
用于模拟用户操作请求,设置请求参数向服务器发起请求以及接受服务器的响应数据;本章主要用于做http接口测试;Jmeter采样器支持对FTP,JDBC,TCP,邮箱服务等进行压测;一般只能在线程组上创建,一个线程组下面可以增加几个Sampler。
线程组“课程模块”右击,操作:线程组->添加-> Sampler(采样器) -> HTTP请求
成功创建采样器,命名为“课程列表”;
说明:
名称:自定义名称,一般说明接口名称
注释:说明接口的主要测试内容和作用
Web服务器:主要用户定义请求协议,设置请求IP或域名,以及请求的端口号;专题已有文章详细介绍,需了解详情请专题栏目内查看;
HTTP请求:用于设置请求方式,请求的具体路径,以及服务器要求的请求数据编码格式;
监听器(Listener)
用于对线程组模拟的请求进行数据监控,实时统计显示并收集请求结果;可用在“线程组”和“采样器”右击添加;加在“线程组”,监听整个线程组的“http采样”请求结果,加在“采样器”上,只监听当前采样器的http请求结果;
“课程列表”右击,操作:添加->监听器->察看结果树
作用:用于查看已发起请求和响应结果,可以详细的查看每个请求的请求参数,响应状态码,响应数据等;
“课程列表”右击,操作:添加->监听器->聚合报告
作用:将测试计划执行的所有结果进行一个报表汇总;直观的反馈各项指标QPS,错误率,成功率;
请求服务器效果图
根据以上步骤,将其他接口按模块分类,然后创建线程组和测试计划;效果如下
响应结果中文乱码修复
Jmeter默认编码格式为ISO-8859-1,导致在请求服务器数据解析后显示成中文乱码,需要找打配置文件jmeter.properties进行以下配置;(jmeter.properties所在位置)
Jmeter的bin目录下,找到jmeter.properties文件,设置一下参数并重启Jmeter;
sampleresult.default.encoding=UTF-8
正常访问服务器数据格式
Jmeter默认编码格式请求服务器,数据响应格式,中文乱码
经过修改Jmeter默认编码格式为UTF-8后,数据响应格式正常