性能测试|JMeter取样器(一)

2023-01-11 17:13:34 浏览数 (1)

取样器介绍

取样器是用来模拟用户操作的,向服务器发送请求以及接收服务器的响应数据。

取样器是在线程组内部的元件,也就是说取样器只能在线程组中添加。

取样器(Sampler)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元。(取样器通常要进行这三个工作)

JMeter自带的取样器

HTTP Request:HTTP请求

Flow Control Action :测试活动

Debug Sampler :Debug取样器

JSR223 Sampler :JSR223取样器

AJP/1.3 Sampler :AJP/1.3取样器

Access Log Sampler:Access Log取样器

Bean Shell Sampler :Bean Shell取样器

FTP Request :FTP请求

JDBC Request :JDBC Request

JMS Publisher:JMS发布

JMS Point-to-Point :JMS点到点

JMS Subscriber :JMS订阅

JUnit Request :JUnit请求

Java Request :Java请求

LDAP Extended Request :LDAP扩展请求默认值

LDAP Request :LDAP请求

OS Process Sampler :OS进程取样器

SMTP Sampler :SMTP取样器

TCP Sampler :TCP取样器

Mail Reader Sampler:邮件阅读者取样器

说明:

在测试工作中用的最多的可能就是“HTTP请求”。

每一种不同类型的sampler可以根据设置的参数向服务器发出不同类型的请求。

在JMeter的所有Sampler中,Java Request Sampler与Bean Shell Sampler是两种特殊的可定制的Sampler。

总结:

取样器的作用是向服务器发送请求,记录响应信息,记录响应时间。

多个取样器按照它们在树中出现的顺序运行。

“HTTP请求”为例介绍一下取样器

在这里插入图片描述在这里插入图片描述

根据上图解释说明:

(1)HTTP Request:

名称(Name):取样器名称,也就是需要访问接口的名称。

建议写成请求接口的地址,例如:/login这样在有多个取样器的时候,左侧列表就可以知道该取样器是针对哪个接口的。

注释(Comments):对当前取样器的解释说明。

(2)Web服务器:

协议<Protocol(http)>:向目标服务器发送HTTP请求时的协议,可以是http或者是https或者File ,默认值为http协议 (根据需求定)。

服务器名称或IP(Server Name or IP):HTTP请求发送目标服务器的域名或IP地址,例如www.baidu.com或者127.0.0.1。

端口号(Port Number):所访问服务器中应用所占的端口,默认80端口。

(3)HTTP请求:

1)方法(Method):

发送HTTP请求的请求方式。(可以根据接口文档获得)

请求方式包括:GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。

2)路径(Path):

目标接口的URL路径(不包括服务器地址和端口)。

也可以直接写完整路径(上面配置的IP 端口就可以省略了) ,不带参数的api路径。

3)内容编码(Content encoding):

请求数据内容的编码方式,默认值为iso8859编码,但一般content encoding配置为UTF-8,来防止中文乱码。

说明一下Content encoding属性:

Accept-Encoding和Content-Encoding是HTTP中用来对采用哪种编码格式传输正文进行协定的一对头部字段。

工作原理如下:

1、首先浏览器(也就是客户端)发送请求时,通过Accept-Encoding带上自己支持的内容编码格式列表。

2、服务端在接收到请求后,从中挑选出一种用来对响应信息进行编码,并通过Content-Encoding来说明服务端选定的编码信息。

3、浏览器在拿到响应正文后,依据Content-Encoding进行解压。

0 人点赞