Jmeter全方面讲解——Jmeter的元件使用介绍:(三)配置元件详解01

Jmeter的配置元件有非常多,常用的有:信息头管理器、Cookie管理器、用户定义的变量、Http请求默认值、JDBC Connection Configuration、CSV 数据文件设置、计数器等,本文会对这些常用的配置元件一一介绍,还有其他很多配置元件,由于不太常用,此处了解下还有这些不常用的配置元件即可。如:缓存管理器、DNS缓存管理器、FTP默认请求、TCP请求配置、JAVA默认请求、Bolt Connection Configuration等等。

基础须知:Jmeter各个元件的执行顺序为:配置元件->前置处理器->定时器->取样器->后置处理器->断言器->监听器。配置元件在Jmeter执行过程中,在相同作用域下肯定会被最先执行,使用过程中要严格遵守作用域问题。

一:信息头管理器
信息头管理器用来传输取样器信息头。使用规则:特别需要注意使用的作用域问题,分为3种。
1、如果整个测试计划下的所有取样器请求都一致,则在测试计划下添加,这样能做到整个测试计划下共享信息头。
2、如果在同一线程组下,所有取样器的请求头都用到了相同的某个值如:token等,那就在线程组下添加信息头管理器,这样同一线程组下的所有取样器都能传入相同的请求头了。
3、如果每个取样器的请求头不太一致,则在具体的取样器下添加。
通过下图进行下简单理解:
image

注意点:
(1)如果存在多个信息头管理器,则引用的信息头会进行叠加。如下例子:
【测试计划下添加的信息头】填入信息:token:12345678
【线程组1下添加的信息头】填入信息:Content-Type:application/json
则HTTP请求1-1会叠加这两个值,如图:
image

image

执行结果:
image

(2)如果存在多个信息头管理器,而且信息头管理器有变量名称重复了,只是作用域不一样,则会引用作用域小的变量,如下例子:
【测试计划下添加的信息头】填入信息:token:12345678
【线程组1下添加的信息头】填入一个与上相同的变量信息:token:abcdefg
则实际执行的时候,会引用作用域小的token,如图:
image

image

执行结果:
image

(3)如果存在多个信息头管理器,而且信息头管理器有变量名称重复了,作用域也一样,则会引用第一个信息头管理器的变量,如下例子:
【测试计划下添加的信息头1】填入信息:token:12345678
【测试计划下添加的信息头2】填入信息:token:abcdefgh
则实际执行的时候,得看哪个信息头管理器放在前面就引用哪个信息头的变量,该处是将【测试计划下添加的信息头1】放在前面,所以是引用到了token:12345678。如下图:
image

image

执行结果:引用的是前面的信息头
image

二、Cookie管理器
对于有些请求需要Cookie的时候,可以考虑加上这个配置元件,通常会在登录接口返回Cookie存储到客户端本地,使用该元件可以解决Cookie验证问题。
使用方式:直接添加即可,一般是添加到测试计划或者线程组下。
image

三:请求默认值
如果多个请求存在相同的部分,那么就可以将这些相同的部分抽取到【请求默认值】,在填写具体请求的时候,就可以省略请求默认值得信息不填,同样需要非常注意作用域问题。
例子:新建一个【HTTP请求默认值】,填写发起百度请求的信息,那么在实际发起百度请求的时候,就可以忽略这部分信息了。
image

image
执行结果如下:
image

四:用户定义的变量
主要用于进行参数化设计,但只适用于数据量比较少的参数化,大数量的参数化就不适用了,重要的事情每次都需要强调下:需要注意作用域的问题。
使用方法:添加元件后,填写变量信息即可,填写完后,就可以在作用域范围下的元件进行引用,如下图:
image

image

执行结果:

image

五:CSV设置文件
用于进行批量参数化,有两种方式,第一种是Jmeter自带的CSV配置文件,第二种是插件管理器安装的Random CSV Data Set Config。

1、Jmeter自带的CSV配置文件:该元件只能按照提供的数据源文件按顺序取值。下面进行元件页面各项值的介绍。
image
(1)文件名:选择提供数据的文件,要选择.csv格式的文件
(2)文件编码:选择对文件的编码格式,一般选utf-8
(3)变量名称:给获取到的数据源数据取变量,要取多个数据,就要用英文下分号";"间隔
(4)忽略首行:选择True就是忽略数据源的首行,选择False就是不忽略
(5)其他选项:一般默认即可。

下面实际使用:
(1)准备CSV源文件:
image
(2)填写CSV参数化元件信息:
image
(3)引用参数化的值
image

执行结果:
image

注意事项:该CSV参数化元件只能按顺序取值,即:脚本一次执行下,只能在数据源文件从上往下取值,下面我给请求添加循环数看看现象。
image

执行结果:
image

image

有时候我们想要每次执行请求都能随机取数据源的某一条数据,那么这时候就需要用到第二种CSV参数化配置文件:Random CSV Data Set Config

2、Random CSV Data Set Config:该元件Jmeter不会自带,需要我们手动安装。
(1)打开插件管理器
image

(2)安装Random CSV Data Set
image

使用介绍:
image

Filename:选择数据源文件路径
File encoding:选择编码格式,一般选择UTF-8
Delimeter:分隔符,默认即可
Variable names:给变量命名
Fist line is CSV header:如果第一行是表头,则勾选下
其他没介绍到的默认即可,不用关心

下面进行实际使用
(1)信息配置:
image
(2)执行结果:
image

image

posted @ 2021-12-12 01:40  筱筱创  阅读(1783)  评论(0编辑  收藏  举报