Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试。Jmeter安装成功后,直接进入安装包目录下bin文件,双击jmeter.bat即可进入jmeter界面。
Jmeter主要元件如上图所示,有线程计划、线程组、取样器(Sampler)、逻辑控制器、前置处理器、后置处理器、断言、定时器、配置元件、监听器等。
1.Jmeter元件功能介绍
线程计划:是使用 Jmeter进行测试的起点,它是其它 JMeter测试元件的容器。
线程组:代表一定数量的用户,它可以用来模拟用户并发发送请求,实际的请求内容在取样器中进行定义,它被线程组包含。
Sampler(取样器):是接口测试或者性能测试中向服务器发送请求,记录响应信息、响应时间的最小单元,如:HTTP请求、FTP请求、TCP 取样器等,每一种不同类型的Sampler可以根据设置的参数向服务器发出不同类型的请求。
逻辑控制器:可以自定义Jmeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的请求序列。
前置处理器:负责请求之前的工作,常用来修改请求的设置。
后置处理器:负责请求之后的工作,常用获取返回的值。
断言:用来判断请求响应的结果是否是用户所期望的。
定时器:负责定义请求之间的延迟间隔。
配置元件:设置Sampler需要的配置信息,并根据实际的需要修改请求的内容。
监听器:负责收集测试结果,同时确定结果显示的方式。
2.元件作用域
Jmeter每个元件的作用域可以根据Jmeter操作界面上各个元件的层次结构来进行判断。
前置处理器:在其作用范围内的每一个Sampler元件之前执行。
后置处理器:在其作用范围内的每一个Sampler元件之后执行。
断言:在其作用范围内,对每一个Sampler元件执行后的结果进行校验。
定时器:在其作用范围内的每一个Sampler元件有效。
配置元件:影响其作用范围内的所有元件。
监听器:在其作用范围内,对每一个Sampler元件的信息结果收集并呈现。
3.元件执行顺序
元件一般执行顺序:配置元件->前置处理器->定时器->取样器->后置处理程序->断言->监听器
但是要注意:
- 前置处理器、后置处理器和断言等元件只能对Sampler起作用,因此,如果在它们的作用域内没有任何Sampler,则不会被执行。
- 如果在同一作用域内有多个同一类型的元件,则这些元件按照它们在测试计划中的上下顺序依次执行。