Jmeter的简单控制器

时间:2022-11-08 15:19:00

一.foreach控制器

  foreach控制器与用户定义的变量是绑定使用的,对它下面的子节点进行循环。

  1.创建用户定义的变量:线程组——添加——配置元件——用户定义的变量。

  在“用户定义的变量”下面值中添加你需要的变量,名称前缀(url)要一致,后缀("_"后面的数字)则是从1开始递增。这样有利于迭代取值到时候都能取到。

    Jmeter的简单控制器

2.创建ForEach控制器:线程组——添加——逻辑控制器——ForEach控制器。

  输入变量前缀:这里放的是“用户定义的变量”中的名称前缀(url);

  Start inex for loop(exclusive)起始的索引:默认是1;

  End inex for loop(exclusive)结束的索引:默认是最后一个;

  输出变量名称:这里设置的参数用来获取“用户定义的变量”中的变量。

  Add "_" before number?前面默认勾选上。

     Jmeter的简单控制器

3.在ForEach控制器下面创建http请求,并往里面放置你设置的参数。

   Jmeter的简单控制器

4.运行一下,可以访问上面你设置的变量值,说明ok。我这里只循环一次,http请求数量是上面你设置的变量数量。

  Jmeter的简单控制器

 

二.Switch Controller

1.创建Switch Controller:线程组——添加——逻辑控制器——Switch Controller。

  Switch Value:设置你要访问的请求索引(从0开始的)或者直接设置访问的请求名称。

  Jmeter的简单控制器

2.在Switch Controller下面创建两个http请求,分别是“访问百度首页”和“访问百度新闻”。

    Jmeter的简单控制器

3.上面Switch Value我设置的索引为0,下面来运行一下。看,可以访问到索引为0的http请求(访问百度首页),说明ok。

  Jmeter的简单控制器

4.现在我们将Switch Value设置为访问的请求名称(访问百度新闻)。

  Jmeter的简单控制器

5.下面来运行一下,可以访问到“访问百度新闻”请求,说明ok。

  Jmeter的简单控制器

三、IF控制器

1.用户定义的变量:线程组——添加——配置元件——用户定义的变量。

  我设置参数名称为username,它的值是admin。

  Jmeter的简单控制器

2.创建第一个if控制器:线程组——添加——逻辑控制器——如果(If)控制器。

  在第一个if控制器下面创建一个http请求(访问百度首页)

  第一个if控制器的条件是"${username}"=="admin",当满足条件用户定义的变量中username设置的值等于admin时,执行“访问百度首页”请求。

  注意进行比较的是字符串的形式,需要用引号。

  Jmeter的简单控制器

3.创建第二个if控制器:线程组——添加——逻辑控制器——如果(If)控制器。

  在第二个if控制器下面创建一个http请求(访问百度新闻)

  第一个if控制器的条件是"${username}"!="admin",当满足条件用户定义的变量中username设置的值不等于admin时,执行“访问百度新闻”请求。

  Jmeter的简单控制器

4.如用户定义的变量的图中所示,我在用户定义的变量中设置的username的值为admin,下面运行一下,结果显示的是“访问百度首页”,说明ok。

  Jmeter的简单控制器

 四、事务控制器:

  目的:统计该控制器下面的子节点运行的时间。

1.创建事务控制器:线程组——添加——逻辑控制器——事务控制器。

2.在事务控制器下面创建两个http请求和“用表格察看结果”。

  Jmeter的简单控制器

Generate parent sample:统计控制器下面所有子节点的总共的时间。勾选上这一项后,结果如下:只显示总共的时间

  Jmeter的简单控制器

不勾选上Generate parent sample这一项,结果如下:显示出每个子节点的时间和总共的时间。

  Jmeter的简单控制器

 

Include duration...generated sample:统计定时器等待的时间。如果你添加了定时器,然后勾选了这一项,则会将你定时器等待的时间也统计出来。

 

五、循环控制器

可以理解为:循环该控制器下下面字节点的次数。

线程组里循环次数设置了n次,循环控制器下的循环次数也设置了m次,则该控制器下的请求运行的次数是(n*m)次。

下面我设置线程组中的循环次数为2次:

  Jmeter的简单控制器

 设置循环控制器中的循环次数为3次;

    Jmeter的简单控制器

下面运行一下,查看结果返回的是2*3=6次。

    Jmeter的简单控制器

 

六、吞吐量控制器:

控制该控制器下面子节点运行次数。

1.创建吞吐量控制器:线程组——添加——逻辑控制器——吞吐量控制器。

  Jmeter的简单控制器

   Total Executions:吞吐量的次数;

   Percent Executions:吞吐量占的百分比。

2.选择吞吐量次数来试下,我让控制器1运行2次,让控制器2运行1次。

  Jmeter的简单控制器  

  Jmeter的简单控制器

3.运行一下线程组,返回的结果显示百度新闻访问了2次,百度首页访问了1次。

  Jmeter的简单控制器