一、Jmeter简介
1.Jmeter的目录结构
- /bin 目录(常用文件介绍)
- examples:目录下包含Jmeter使用实例
- ApacheJMeter.jar:JMeter源码包
- jmeter.bat:windows下启动文件
- jmeter.sh:Linux下启动文件
- jmeter.log:Jmeter运行日志文件
- jmeter.properties:Jmeter配置文件
- jmeter-server.bat:windows下启动负载生成器服务文件
- jmeter-server:Linux下启动负载生成器文件
- /docs目录——Jmeter帮助文档
- /extras目录——提供了对Ant的支持文件,可也用于持续集成
- /lib目录——存放Jmeter依赖的jar包,同时安装插件也放于此目录
- /licenses目录——软件许可文件,不用管
- /printable_docs目录——Jmeter用户手册
2、Jmeter线程组基本操作
2.1 线程组是什么
进程: 一个正在执行的程序对应一个进程
线程: 一个进程有多个执行线程
线程组: 按照线程性质对线程分组
三者关系: 一个进程有多个线程组,一个线程组有多个线程
测试计划—线程组—线程组属性中的线程数
并发执行:多个线程同时执行,特点:执行结束的顺序与开始的顺序不一致
顺序执行:按照线程的启动顺序挨个执行
默认情况下,线程组中的线程是并发执行
每一个线程都要执行组内的http请求
设置线程组顺序执行:勾选测试计划中的(独立运行每个线程组)
线程组用来模拟用户的并发访问
2.2.创建线程组

- 线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。
- 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
- 准备时长(秒):设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。
- 循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
- 调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)
- 持续时间(秒):测试持续时间,会覆盖结束时间
- 启动延迟(秒):测试延迟启动时间,会覆盖启动时间
- 启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会覆盖它。
- 结束时间:测试结束时间,持续时间会覆盖它。
2.3 创建http请求
2.4.指定请求域名,请求路径
一个HTTP请求有着许多的配置参数,下面将详细介绍:
名称:本属性用于标识一个取样器,建议使用一个有意义的名称。
注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。
服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址。
端口号:目标服务器的端口号。
方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。
Content encoding :内容的编码方式,默认值为iso8859
路径:目标URL路径(不包括服务器地址和端口)
2.5. 设置对应的查看内容
二、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的关联用到了哪些方法去实现
- 接口的响应结果通常为 html 和 Json 格式的数据,主要会用到正则提取器、Json
Jmeter使用指南:从入门到性能测试

本文围绕Jmeter展开,介绍了其目录结构、线程组操作等基础知识,阐述了主要组件功能。还讲解了关联、参数化方法,以及用户定义变量和用户参数的区别。详细说明了用Jmeter做性能测试的流程,包括脚本编写、执行和结果分析,同时对比了与其他工具的差异。
最低0.47元/天 解锁文章
1778

被折叠的 条评论
为什么被折叠?



