线程组、HTTP取样器、查看结果树
tips:无论哪个case基本都需要以上三个组件、
一、线程组
1.1 说明:线程组控制JMeter将用于执行测试的线程数,也可以把一个线程理解为一个测试用户
1.2 添加线程组
右键点击“测试计划”-->添加-->线程(用户)-->线程组
1.3 线程组的特点
(1)设定线程数-->多个用户操作,线程组-->多个用户组
(2)取样器(请求)和逻辑控制器必须依赖线程组才能使用
(3)线程组可以添加多个,多个线程组可以并行或串行(默认是并行的,想改为串行:在“测试计划”界面-->勾选独立运行每个线程组)
(4)线程组下可以添加其他元件的组件
1.4 线程组的分类
(1)setUp线程组:一种特殊类型的线程组,可用于执行预测试操作,最先执行
(2)线程组:普通的、常用的线程组,可以看作一个虚拟用户组,线程组中的每一个线程都可以理解位一个虚拟用户
(3)teatDown线程组:一种特殊类型的线程组,可用于执行测试后工作,最后执行(恢复环境、数据)
1.5 线程组的参数解释
1.5.1 线程数:模拟并发多少个用户发送请求
1.5.2 Ramp-Up Period(in seconds):所有用户逐一启动的总时间,设置每秒启动的频率,如10个用户,启动总时间为5s,则1s启动两个用户
1.5.3 循环次数--> 一般用于稳定性测试7*24h
(1)配置指定次数:控制脚本循环执行的次数
(2)配置循环永远: 需要和调度器搭配使用
-运行时间:脚本执行的时间
-延迟启动时间:脚本等待特定的时间才能开始运行
tips:线程数m和循环次数n的关系
(1)如果同时配置,实际发送的HTTP 请求数应该为m*n
(2)虽然发送请求的次数相同,但是不能相互替换
--线程组:代表并发用户数,体现服务器的负载量
--循环次数:代表执行时间
二、HTTP请求
http请求基本的六要素:
http协议:可以填写为http或者https,默认不填写时为http
主机名/IP:
端口:可以填写为任何值,默认不填写时为80端口
请求方法:http协议所支持的所有方法
路径:目录+参数
编码格式:默认ISO国际标准,推荐使用utf-8
http的get 方法
http的post请求方法,要在请求体里写参数和值
Https请求的基本要素:https协议、主机名/IP、端口443、请求方法、路径:目录+参数、编码格式utf-8
tips:https请求,参数不在路径里面
三、查看结果树
取样器结果:统计请求相关的信息、响应码、响应头
请求:HTTP请求的请求头和请求体的详细信息
响应数据:HTTP的响应体的详细信息
tips:遇到JMeter响应体的信息时乱码,需要修改配置文件,在安装目录下找到JMeter4.0\bin\jmeter.properties 打开,
默认是:#sampleresult.default.encoding=ISO-8859-1
去掉注释#,改为: sampleresult.default.encoding=UTF-8,并重启Jmeter