jmeter通过if控制器控制业务比例

以发帖,看帖,回帖三个事物为例,这里就10个用户跑10次,进行测试下:

可以看到看帖,回帖,发帖比例是5:3:2,先来说说怎么做到的,就是通过if控制器,分别来看下几个控制器的内容,

看帖(if控制器):勾选“interpret condition as variable expression”,这时expression中不能直接填写条件表达式,需要借助函数将条件表达式计算为true/false,可以借助的函数有_jexl3和_groovy,比如${__groovy(${__counter(true)}%2 == 0,)},如果没勾选,直接输入我们需要判断的表达式即可,判断表达式为真时,执行if控制器下的请求,比如${__counter(true)}%2 == 0

回帖的if控制器的写法:${__groovy(${__counter(true)}%5 == 0 || ${__counter(false)}%7 == 0)}

发帖的if控制器的写法:${__groovy(${__counter(true)}%5 == 0 )}

是不是很简单呢,大家可以试一下,通过if控制器可以随机控制业务场景的比例.

原文地址:https://www.cnblogs.com/leixiaobai/p/11076284.html

时间: 2024-10-10 07:34:21

jmeter通过if控制器控制业务比例的相关文章

在JMeter测试计划中如何控制业务比例

性能测试混合场景中,我们需要组合多个业务操作到场景中来.比如有一个论坛的业务分布如下:开新帖与回复帖子的比例为2:3,那么我们在JMeter测试计划中如何控制其比例呢? 下面我们介绍两种方式: 1.多线程组方式 2.逻辑控制器控制 多线程组方式: 我们知道JMeter是用线程组来模拟虚拟用户的,JMeter还可以支持一个计划中多个线程组. 利用这个特性我们可以把开新帖业务放在一个线程组中,回帖业务放在另外一个线程组中. 为了制造出业务量的比例关系,我们通过控制线程数来达到效果.如下图: Repl

JMeter性能测试中控制业务比例

性能测试混合场景中,我们需要组合多个业务操作到场景中来.比如有一个论坛的业务分布如下:发布新帖与回复帖子的比例为2:3,那么我们在JMeter测试计划中如何控制其比例呢? 可以通过以下两种方式解决:多线程组方式 逻辑控制器控制 多线程组方式: JMeter是用线程组来模拟虚拟用户的,JMeter支持一个计划中多个线程组.利用这个特性我们可以把发布新帖业务放在一个线程组中,回帖业务放在另外一个线程组中.通过控制线程数来达到需求的业务量的比例关系. 回帖线程组,添加90个线程:发布新帖线程组,添加6

使用容器控制器控制另外两个控制器的view交换

建三个UIViewController 的子控制器,其中一个为根控制器,另外两个控制器的视图作为切换对象 AppDelegate中代码 //AppDelegate.h中代码 #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @property (retain, nonatomic) UIWindow *window; @end //AppDelegate.m中代码

AngularJS之使用控制器封装业务逻辑

控制器的作用 我们知道,在AngularJS中,实现数据绑定的核心是scope对象.那么控制器又有什么用呢? 简单地说,没有控制器/controller,我们没有地方定义业务模型. 回忆下ng-init指令.我们可以使用ng-init指令在scope对象上定义数据,比如: <div ng-init="sb={name:'somebody',gender:'male',age:28}"> </div> 但是,ng-init的值是一个AngularJS表达式,没有办

STM32驱动ILI9341控制器控制TFTLCD显示

STM32驱动ILI9341控制器控制TFTLCD显示 一.用STM32控制TFTLCD显示的编程方法,在编程驱动TFTLCD液晶显示器之前,我们先熟悉以下概念: 1.色彩深度,这是一个与TFTLCD显存对应的概念:所谓色彩深度就是每个像素点需要多少位的RGB 数据表示该点的颜色信息.注意,不同的TFTLCD显示器的RGB的对应关系不一样,这个可以在LCD 控制芯片手册中找到答案. 例: 某LCD显示支持8.16.24位RGB,这些位数是指该像素点颜色由8.16.24位RGB构成,但是 R\G\

Jmeter -- 循环控制器 -- 控制请求执行次数

目的: 登录请求 -- 执行一次 查询请求 -- 执行多次 步骤: 1. 添加循环控制器,按照下图层级所示: 2. 配置线程并发数,和循环控制器循环次数 原文地址:https://www.cnblogs.com/xiaochongc/p/11557815.html

Jmeter使用吞吐量控制器实现不同的用户操纵不同的业务

一.需求 需求:博客系统,模拟用户真实行为,80%的用户阅读文章,20%的用户创建文章,创建文章的用户随机的删除或者修改文章. 二.脚本实现 80%的用户查看文章 20%用户创建文章 根据post_id是否能整除2,决定编辑还是删除 原文地址:https://www.cnblogs.com/loveapple/p/10035706.html

Jmeter——for循环控制器和if逻辑控制器

有时我们不仅仅需要用例按照简单的顺序跑,需要内嵌循环,或者条件分支,让某些用例在满足一定条件时才执行. 1.for循环控制器 此处记录两种应用的场景,一种是直接定义好要循环的变量,循环次数是固定的,写死就可以. 1)比如对起止时间进行循环,我们固定开始时间,让结束时间跨半小时.1小时.3小时.6小时...然后取各种长度的时间段.下面我们写好时间参数,配置for循环控制器: 这个例子中,我们循环只执行一次,就是让lte取lte_3的值,循环执行几次,取哪几个值,是可以通过start index和e

jmeter测试元件--控制器

jemter 有两种类型的控制器:采样器和逻辑控制器,二者结合起来驱动了测试进程 采样器 采样器告诉jmeter发送一个请求到指定服务器,并等待服务器的请求.采样器或按照其在测试树中的顺序去执行,还可以用逻辑控制器来改变采样器运行的重复次数. 逻辑控制器 逻辑控制器可以帮助用户控制Jmeter的测试逻辑,特别是何时发送请求.逻辑控制器改变其子测试元件的请求执行顺序. 监听器 监听器提供了对jmeter在测试期间收集的信息的访问方法.监听器可以在测试的任何地方添加,包括直接放在测试计划之下.他们仅