【P32】JMeter While 控制器(While Controller)

news2024/11/19 20:35:50

文章目录

    • 一、While 控制器(While Controller)参数说明
    • 二、测试计划设计
      • 2.1、变量
      • 2.2、函数
        • 2.2.1、groovy脚本
        • 2.2.2、jex13脚本
        • 2.2.3、js脚本


一、While 控制器(While Controller)参数说明

可以对部分逻辑按变量条件进行循环迭代;While 循环控制器与常量循环控制器最大的区别在于 While 是计算动态变量来进行控制

选择线程组右键 >>> 添加 >>> 逻辑控制器 >>> While 控制器(While Controller)

在这里插入图片描述

While 循环控制器支持通过变量和函数两种方式进行循环

A:变量,比如 ${count},如果值为 10,则循环 10 次

B:函数,条件判断同时支持 js、groovy、jexl3 三种脚本语言,出于性能原因,不建议使用 js

  • js 语法举例:KaTeX parse error: Expected '}', got 'EOF' at end of input: …_\_javaScript("{count}" !=“0”)}

  • groovy 语法举例:${__groovy(vars.get(“count”) !=“0”)}

  • jex13 语法举例:KaTeX parse error: Expected '}', got 'EOF' at end of input: {\_\_jexl3({count}!=0)}

二、测试计划设计

2.1、变量

(1)、测试计划右键 <<< 添加 <<< 线程(用户)<<< 线程组

(2)、线程组右键 <<< 添加 <<< 配置元件 <<< 用户定义的变量

在这里插入图片描述

  • count :5

  • flag :true

(3)、线程组右键 <<< 添加 <<< 取样器 <<< 调试取样器

在这里插入图片描述

  • 名称:调试取样器-1

(4)、线程组右键 <<< 添加 <<< 逻辑控制器 <<< While控制器

在这里插入图片描述

${flag}

(5)、While控制器右键 <<< 添加 <<< 取样器 <<< 调试取样器

在这里插入图片描述

  • 名称:调试取样器-2

(6)、线程组右键 <<< 添加 <<< 监听器 <<< 查看结果树

(7)、点击启动,点击 查看结果树 进行查看

在这里插入图片描述

如图,While控制器中的 ${flag} 值一直为 true,所以 调试取样器-2 会一直迭代运行

(8)、修改用户定义的变量,将flag的值修改为false

在这里插入图片描述

(9)、点击清除全部,点击启动,点击查看结果树进行查看

在这里插入图片描述

如图,While控制器中的 ${flag} 值为 false,所以 调试取样器-2 不会执行,只运行 调试取样器-1

实际业务场景:循环过程中会动态修改值。添加一个后置处理器 JSR223 后置处理程序,根据某些业务条件,修改 flag 的值,vars.put(“flag”,“false”);

2.2、函数

2.2.1、groovy脚本

(1)、修改While控制器,使用groovy脚本

在这里插入图片描述

(2)、While控制器右键 <<< 添加 <<< 后置处理器 <<< JSR223 后置处理程序

在这里插入图片描述

def count=vars.get("count");  // 在Jmeter中取变量,默认为字符串;定义变量count
int i=Integer.parseInt(count);  // 将count转为整型
i=i-1;
vars.put("count",i+"");  // 将count替换成i,+"" 是将i转为字符串

设置 调试取样器-2 每迭代一次,count的值就减一

(3)、点击清除全部,点击启动,点击查看结果树进行查看

在这里插入图片描述

如图,count 的初始值为5,调试取样器-2 每迭代一次,count就减1,所以 调试取样器-2 会执行5次

(4)、在JSR223 后置处理程序中添加打印代码,可以在日志中查看count的值

在这里插入图片描述

log.info("当前count值为:"+vars.get("count"));  // 在日志中打印结果

(5)、打开日志,再次启动,查看日志信息

菜单点击选项,点击日志查看

在这里插入图片描述

如图,日志中打印出count的值,每次 调试取样器-2 迭代一次,count的值就减一

2.2.2、jex13脚本

将While控制器中的脚本改成如下脚本即可

${__javaScript("${count}"!="0")}

2.2.3、js脚本

将While控制器中的脚本改成如下脚本即可

${__javaScript("${count}"!="0")}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/568988.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【算法】—— 简单多状态 dp 问题

在上期&#xff0c;我给大家讲解了关于单个状态下的dp问题&#xff0c;本期我给大家讲述几道关于多状态下的dp问题。希望大家有所帮助&#xff01;&#xff01;&#xff01; 目录 &#xff08;一&#xff09;粉刷房⼦ &#xff08;二&#xff09;买卖股票的最佳时机含冷冻期 …

破解提升 LLMs 性能的黑匣子—— LlamaIndex

“可以将 LlamaIndex 视为外部数据和 LLM 连接在一起的黑匣子。”在 Zilliz 组织的网络研讨会中&#xff0c;LlamaIndex 的联合创始人兼首席执行官 Jerry Liu 曾这样说道。 对于 Jerry Liu 的这个比喻&#xff0c;熟悉 LLMs 的开发者会觉得颇为贴切&#xff0c;尤其是对于那些想…

Chinese-LLaMA-Alpaca代码实战

文章目录 微调chinese-alpaca部署llama.cpp将FP16模型量化为4-bit 项目地址&#xff1a; https://github.com/ymcui/Chinese-LLaMA-Alpaca 微调chinese-alpaca 本项目基于中文数据 开源了使用中文文本数据预训练的中文LLaMA大模型&#xff08;7B、13B&#xff09;开源了进一…

JavaFX【TableView使用详解】

目录 概述 组件 Student ObservableList TableView setCellValueFactory() TableColumn 1. Callback 2. PropertyValueFactory 增加到末行 1、tableView.getItems().add(Student s) 2、list.add(Student s) 删除指定行 1、tableView.getItems().remove(int i) 2、…

软件测试完后,运行后还有BUG,测试人员就应该背锅吗?

测试完成后还有bug&#xff0c;测试人员肯定是有责任的&#xff0c;第一时间要赶紧处理而不是着急甩锅。但是这口锅全部扣测试身上&#xff0c;明显也是不能接受的&#xff0c;关键在于测试人员需要找出足够的证据来保护自己。 或许很多人会说测试不可能发现所有的bug&#xf…

软件测试人的第一个实战项目:web端(视频教程+文档+用例库)

最近很多自学测试的小伙伴在问我&#xff0c;学完基础的知识后面临着项目问题&#xff0c;网上项目大都不全&#xff0c;而且也不知道该怎么做&#xff0c;不知道做哪些项目能帮助自己提升 今天给大家分享一个web软件测试实战项目&#xff0c;该项目对新手十分友好&#xff0c;…

STM32入门100步(第4步~第5步)

第4~5步 STM32内部核心功能 前两节中,我们了解了什么是ARM、什么是STM32系列,接下来就是了解具体的一款STM32单片机的内部功能。单片机就是一种微小型计算机,其核心原理就是计算机原理。对于其他非ARM构架的单片机来说学习过程也是相似的。 我们学习的是STM32F103C8T6这款单…

细说前端打包发布后,浏览器缓存如何清理?其实只需要简单的webpack配置就行

前言 有没有这么一种场景&#xff0c;项目上线后&#xff0c;客户使用过程中发现了bug&#xff0c;你急急忙忙改完&#xff0c;发布。但你发布后 测试人员或者客户会说&#xff1a;“你这改了没用啊”。 你&#xff1a;“清下缓存试试” 客户&#xff1a;“&#xff1f;&am…

c#——WCF和HTTP文件传输实验

&#xff08;1&#xff09;掌握HTTP协议下WCF服务应用程序构建方法。 &#xff08;2&#xff09;掌握WCF客户端和服务端的消息交换模式。 &#xff08;3&#xff09;掌握协定的设计及实现方法。 &#xff08;4&#xff09;熟悉WCF和HTTP的相关绑定设置。 &#xff08;5&#xf…

CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)

文章目录 1、CentOS安装OpenSSL1.1.1&#xff08;前置环境&#xff09;2、CentOS安装 Python 3.103、创建虚拟环境4、运行Django项目 1、CentOS安装OpenSSL1.1.1&#xff08;前置环境&#xff09; 编译安装Python3.10时需要openssl1.1.1 查看当前版本 & 删除openssl1.0 …

Java高并发核心编程—JUC显示锁原理

注&#xff1a;本笔记是阅读《Java高并发核心编程卷2》整理的笔记&#xff01; 显示锁 使用Java内置锁时&#xff0c;不需要通过Java代码显式地对同步对象的监视器进行抢占和释放&#xff0c;这些工作由JVM底层完成&#xff0c;而且任何一个Java对象都能作为一个内置锁使用&a…

Apache Kafka - ConsumerInterceptor 实战 (1)

文章目录 概述使用场景实战配置文件配置类自定义ConSumerInterceptor使用 概述 ConsumerInterceptor是Kafka中的一个重要组件&#xff0c;它允许开发人员在Kafka消费者端拦截和修改消息的处理过程。ConsumerInterceptor可以用于实现各种功能&#xff0c;从消息监控到数据转换和…

【Python开发】FastAPI 01:hello world

FastAPI 是一个轻量级的后端框架&#xff0c;对于定制化不高或者功能简单的业务完全可以拿他作为后台。 FastAPI 一个比较重要的特性就是异步&#xff0c;简单来说就是相比 django 和 flask 快&#xff0c;FastAPI 和 flask 的语法类似。本篇文章介绍 FastAPI 运用的简单实例&a…

从索引结点出发探索软、硬链接

索引结点的初步认识 对于整个计算机系统的资源管理&#xff0c;我们可以认为&#xff0c;OS先将这些资源的数据信息&#xff0c;给描述起来构成一个部分&#xff0c;然后再将它们组织起来&#xff0c;就能够实现由OS集中管理。举一个最经典的例子&#xff0c;进程的引入是为了…

Cos上传(腾讯云):图片存储方案

Cos上传(腾讯云) 01.图片存储方案介绍 目标 了解主流的图片存储方案 两种常见方案 方案一&#xff1a;存到自己公司购买的服务器上 优点&#xff1a;好控制 缺点&#xff1a;成本高由于图片都存放到自己的服务器上&#xff0c;占据空间很大 方案二&#xff1a;存到三方…

总结SpringBoot常用读取配置文件的3种方法

文章目录 1、使用 Value 读取配置文件2、 使用 ConfigurationProperties 读取配置文件3、读取配置文件中的List 1、使用 Value 读取配置文件 注&#xff1a;这种方法适用于对象的参数比较少的情况 使用方法&#xff1a; 在类上添加configuration注解&#xff0c;将这个配置对…

Hotbit交易平台停运,百万用户待清退,币圈危机再度蔓延

“币圈”的危机似乎还没有走到尽头。5月22日&#xff0c;加密货币交易平台Hotbit发文宣布&#xff0c;决定从世界标准时间当日4:00停止所有CEX&#xff08;中心化交易所&#xff09;操作&#xff0c;希望所有用户在6月21日4:00之前提取剩余资产。据悉&#xff0c;该平台在其任期…

微前端乾坤

1. 乾坤 简介 qiankun 是一个基于 single-spa 的微前端实现库&#xff0c;旨在帮助大家能更简单、无痛的构建一个生产可用微前端架构系统 官网&#xff1a;https://qiankun.umijs.org/zh/guide 2.使用 背景&#xff1a; vue2.0 , vue-cli 5.0 主应用&#xff1a; 安装乾坤…

基于上下文折扣的多模态医学图像分割证据融合

文章目录 Evidence Fusion with Contextual Discounting for Multi-modality Medical Image Segmentation摘要本文方法Evidential SegmentationMulti-modality Evidence FusionDiscounted Dice Loss 实验结果 Evidence Fusion with Contextual Discounting for Multi-modality …

利用PaddleOCR识别增值税发票平台验证码(开箱即用)

前言:全国增值税发票查验平台验证码没什么好说的,根据指定的颜色识别验证码中的文字,图片如下 下面直接讲解利用paddleocr识别的思路,为什么使用paddleocr,因为paddle中集成了较好的ocr文字识别模型,开箱即用即可,废话不多说,剑指主题,识别思路步骤如下 步骤如下 1、…