jmeter安装和使用

1.安装JAVA环境
安装JDK,配置环境变量(具体步骤不做介绍)
jmeter安装和使用_第1张图片

将下载Jmeter文件解压,打开/bin/jmeter.bat
jmeter安装和使用_第2张图片
jmeter安装和使用_第3张图片
三. 使用Jmeter测试快速入门
3.1. 线程组是什么
进程: 一个正在执行的程序对应一个进程
线程: 一个进程有多个执行线程
线程组: 按照线程性质对线程分组
三者关系: 一个进程有多个线程组,一个线程组有多个线程

测试计划—线程组—线程组属性中的线程数

并发执行:多个线程同时执行,特点:执行结束的顺序与开始的顺序不一致
顺序执行:按照线程的启动顺序挨个执行
默认情况下,线程组中的线程是并发执行
每一个线程都要执行组内的http请求
设置线程组顺序执行:勾选测试计划中的(独立运行每个线程组)

线程组用来模拟用户的并发访问

3.1.1. 创建线程组
jmeter安装和使用_第4张图片
3.1.2. 线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。
3.1.3. 线程数:虚拟用户数。一个虚拟用户占用一个线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
3.1.4. 准备时长(秒):设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。
3.1.5. 循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
3.1.6. . 调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)
3.1.7. 持续时间(秒):测试持续时间,会覆盖结束时间
3.1.8. 启动延迟(秒):测试延迟启动时间,会覆盖启动时间
3.1.9. 启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会覆盖它。
3.1.10. 结束时间:测试结束时间,持续时间会覆盖它。
jmeter安装和使用_第5张图片
3.2. 创建http请求
jmeter安装和使用_第6张图片
3.3. 指定请求域名,请求路径
jmeter安装和使用_第7张图片
3.6. 查看结果树

请求的数据展示(请求头信息,请求参数,,)

jmeter安装和使用_第8张图片
响应的数据展示(响应码,响应头,)
jmeter安装和使用_第9张图片
通过察看结果树,我们可以看到每个请求的结果,其中红色的是出错的请求,绿色的为通过。
Thread Name:线程组名称
Sample Start: 启动开始时间
Load time:加载时长
Latency:等待时长
Size in bytes:发送的数据总大小
Headers size in bytes:发送数据的其余部分大小
Sample Count:发送统计
Error Count:交互错误统计
Response code:返回码
Response message:返回信息
Response headers:返回的头部信息
3.7. 聚合报告参数说明
jmeter安装和使用_第10张图片
四. Jmeter主要组件介绍
1.测试计划是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器。
2.线程组:代表一定数量的并发用户,它可以用来模拟并发用户发送请求。实际的请求内容在Sampler中定义,它被线程组包含。可以在“测试计划->添加->线程组”来建立它,然后在线程组面板里有几个输入栏:线程数、Ramp-Up Period(in seconds)、循环次数,其中Ramp-Up Period(in seconds)表示在这时间内创建完所有的线程。如有8个线程,Ramp-Up = 200秒,那么线程的启动时间间隔为200/8=25秒,这样的好处是:一开始不会对服务器有太大的负载。线程组是为模拟并发负载而设计。
3、取样器(Sampler):模拟各种请求。所有实际的测试任务都由取样器承担,存在很多种请求。如:HTTP 、ftp请求等等。
4、监听器:负责收集测试结果,同时也被告知了结果显示的方式。功能是对取样器的请求结果显示、统计一些数据(吞吐量、KB/S……)等。
5、逻辑控制器:允许自定义JMeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的请求序列。
6、断言:用于来判断请求响应的结果是否如用户所期望,是否正确。它可以用来隔离问题域,即在确保功能正确的前提下执行压力测试。这个限制对于有效的测试是非常有用的。
7、定时器:负责定义请求(线程)之间的延迟间隔,模拟对服务器的连续请求。
8. 配置元件维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容。
9. 前置处理器和后置处理器负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的设置,后置处理器则常常用来处理响应的数据。
循环控制器
jmeter安装和使用_第11张图片
1.1.12. 事务控制器
作用: 事务控制器会生产一个额外的采样器,用来统计该控制器子结点的所有时间。
在线程组下创建事务控制器
参数:
· Generate parent sample:(选中这个参数结果展示如下图红框,否则显示为下图蓝框)
· Include duration of timer and pre-post processors in generated sample:选中这一项会统计定时器(timer)的时间,否则只统计采样器(sample)的时间
jmeter安装和使用_第12张图片
4.7. 断言—检查点
断言(Assertions)可以用来判断请求响应的结果是否如用户所期望的。它可以用来隔离问题域,即在确保功能正确的前提下执行压力测试。这个限制对于有效的测试是非常有用的。
jmeter安装和使用_第13张图片
Jmeter正则表达式提取
jmeter安装和使用_第14张图片

说明:
(1)引用名称:下一个请求要引用的参数名称,如填写title,则可用 t i t l e 引 用 它 。 ( 2 ) 正 则 表 达 式 : ( ) : 括 起 来 的 部 分 就 是 要 提 取 的 。 . : 匹 配 任 何 字 符 串 。 + : 一 次 或 多 次 。 ? : 不 要 太 贪 婪 , 在 找 到 第 一 个 匹 配 项 后 停 止 。 ( 3 ) 模 板 : 用 {title}引用它。 (2)正则表达式: ():括起来的部分就是要提取的。 .:匹配任何字符串。 +:一次或多次。 ?:不要太贪婪,在找到第一个匹配项后停止。 (3)模板:用 title2().+?3$引用起来,如果在正则表达式中有多个正则表达式,则可以是 2 2 2 3 3 3等等,表示解析到的第几个值给title。如: 1 1 1表示解析到的第1个值
(4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0
(5)缺省值:如果参数没有取得到值,那默认给一个值让它取。
案例:api接口

你可能感兴趣的:(jmeter安装和使用)