最近,遇到了一个困扰很多人的问题。

情景如下:

  业务流程:登录一个网站,反复进行充值。

  通常的做法是使用jmeter对登录和充值的接口进行反复的执行:

但是实现的方法却不能完美的贴合业务流程。

并且,在进行压测的时候,总不可能把登录接口也一起压了吧,因此,就需要用到jmeter的逻辑控制器了。

逻辑控制器

那啥是逻辑控制器呢?

Jmeter官网对逻辑控制的解释是:Logic Controllers determine the order in which Samplers are processed。

翻译一下:逻辑控制可以控制采样器(samplers)的执行顺序。

那么,Show time!!!

1、线程组->添加->逻辑控制器->仅一次控制器

ps:如果是英文版的jmeter,Thread Group->add->logic Controller->Once Only Controller

概念:测试计划执行期间,该控制器下的子结点对每个线程只执行一次

2、在仅一次控制器下添加接口请求

到此,实现登录接口的一次运行

(ps:由图可见,登录接口是在仅一次控制器下面的)

3、线程组->添加->逻辑控制器->循环控制器

ps:如果是英文版的jmeter,Thread Group->add->logic Controller->Loop Controller

概念:指定其子节点运行的次数,可以使用具体的数值(如下图,设置为4次),也可以使用变量

4、在循环控制下添加充值请求

并设置循环次数,到此,即实现了登录一次却循环执行了多次充值接口的目的。

(ps:由图可见,充值接口是在循环控制器下面的)

5、运行察看结果树,完美!

重点

重点来了,老师敲黑板了啊!

循环控制器:

1、永远选项:勾选上这一项表示一直循环下去

2、如果同时设置了线程组的循环次数和循环控制器的循环次数,那循环控制器的下面的接口运行的次数为两个数值相乘的结果。

仅一次控制器:

将仅一次控制器作为循环控制器的子节点,仅一次控制器在每次循环的第一次迭代时均会被执行。

Jmeter分离登录事务的另一种方式的更多相关文章

  1. 事务管理(下) 配置spring事务管理的几种方式(声明式事务)

    配置spring事务管理的几种方式(声明式事务) 概要: Spring对编程式事务的支持与EJB有很大的区别.不像EJB和Java事务API(Java Transaction API, JTA)耦合在 ...

  2. Spring事务配置的五种方式(转发)

    Spring事务配置的五种方式(原博客地址是http://www.blogjava.net/robbie/archive/2009/04/05/264003.html)挺好的,收藏转发 前段时间对Sp ...

  3. Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别

    转: http://blog.csdn.net/it_man/article/details/5074371 Spring事务配置的五种方式 前段时间对Spring的事务配置做了比较深入的研究,在此之 ...

  4. Spring事务管理的四种方式(以银行转账为例)

    Spring事务管理的四种方式(以银行转账为例) 一.事务的作用 将若干的数据库操作作为一个整体控制,一起成功或一起失败.   原子性:指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不 ...

  5. cmd窗口使用sftp命令非密钥和密钥登录SFTP服务器的两种方式

    cmd窗口使用sftp命令非密钥和密钥登录SFTP服务器的两种方式 一.在Windows环境下搭建SFTP服务器可参见http://www.cnblogs.com/Kevin00/p/6341295. ...

  6. Mac Item2 SSH免密登录Linux 服务器的两种方式

    转自http://blog.csdn.net/jobschen/article/details/52823980 mac ssh登录linux服务器 的两种方式: 个人推荐第二种,zsh方式,只需要把 ...

  7. Jmeter中的参数化常用的几种方式

    Jmeter中的参数化常用的几种方式,这里讲一下前两个方式,最后一个在csv参数化里已详细讲解. 1.用户参数 2.函数助手 3.CSV Data Set Config  一.用户参数 位置:添加-前 ...

  8. Spring事务管理的三种方式

    一 .第一种:全注解声明式事务 Xml代码 复制代码 收藏代码 .<?xml version="1.0" encoding="UTF-8"?> .& ...

  9. Spring事务配置的五种方式(转载)

    Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...

随机推荐

  1. socket 编程通信实例

    socket 编程通信实例:TCPserver: , ServerThread,  ;    WSADATA wsaData;    ,),  ;    }    ;    }    } ;    g ...

  2. python的条件判断

    条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= ...

  3. linux一些命令的介绍

    http://www.runoob.com/linux/linux-command-manual.html 寻找文档操作命令wc -l时,发现一个好的介绍linux操作命令的网站.

  4. python自学第四天,字符串用法

    String 的用法 names="张三 welcome {city}" print(names.capitalize())#首字母大写 print(names.count(&qu ...

  5. 2019-04-08-day027-网络编程基础

    网络编程 基于同一台机器上的多个程序之间通信 可以基于文件 基于多台机器之间的通信 可以基于网络 web程序两种架构完成的: C/S :client(客户端) server(服务端) B/S :bro ...

  6. swiper 组件的高度设置问题

    1.swiper组件直接运用时, .content>swiper{height:100%} 是不起作用的. 正确的做法是: swiper{ height: 100vh; } // 或者 < ...

  7. ES6 class的继承-学习笔记

    1.简介 Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多. 子类必须在constructor方法中调用super方法,否则新建实例时会报错. ...

  8. LVM逻辑卷

    LVM逻辑卷 一.LVM逻辑卷概述 1.LVM的作用: 扩充磁盘:不动数据,在使用状态,将磁盘容量变大. 能把多个物理的磁盘整合成一张大的虚拟的磁盘,比如:有3个5G的磁盘,能把它们整合成一个15G的 ...

  9. 2.34 jquery定位

    2.34 jquery定位(简直逆天) 前言元素定位可以说是学自动化的小伙伴遇到的一道门槛,学会了定位也就打通了任督二脉,前面分享过selenium的18般武艺,再加上五种js的定位大法.这些还不够的 ...

  10. 位图(bitmap)—— C语言实现

    高级数据结构及应用 -- 使用 bitmap 进行字符串去重 位图应当具备的置一,清零,以及判断三大功能: #define BITS_PER_WORD 32 #define MASK 0x1f #de ...