Jmeter学习之While Controller】的更多相关文章

参考 https://www.cnblogs.com/richered/p/8404641.html https://blog.csdn.net/rwang99/article/details/51160529 环境 OS: Windows 10 Jmeter: apache-jmeter-4.0 背景 今天遇到一个需要借助Jmeter的测试需求,工作流程如下: 发送Http请求开启后台任务 循环发送Http请求检测后台任务状态,若后台任务已完成则跳出循环 退出 实现思路如下: 1. 创建一个T…
JMeter学习(一)工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等.JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能.     同时,JMeter可以帮助你对你的应用程序进行回归测试.…
JMeter学习工具简单介绍   一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等.JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能.     同时,JMeter可以帮助你对你的应用程序进行回归测试.通…
Jmeter的组织方式相对比较扁平,直接是TestPlan(相当于Project),TestPlan下创建的ThreadsGroup(相当于TestCase), Jmeter一个TestPlan也是一个jmx(xml)文件,无法分割, jmeter测试计划是一系列配置器.线程组.控制器.取样器.断言.监听器.定时器.组成的集合. jmeter运行时会首先运行配置器,然后启动线程组,全部线程组中取样器的执行结果会在配置的监听器中出现. 虽然从界面上可以在测试计划节点上添加监听器.断言,但是绝大多数…
前面三篇文章分别讲述了 HTTP Mirror Server . Debug PostProcessor 和 Debug Samper 的脚本调试实例.此文主要讲述第四种调试方法,通过 BeanShell 脚本结合 jmeter.log 查看响应的变量等信息. BeanShell脚本访问变量主要通过 vars 和 props 去访问,常用主要方法如下: vars.get(变量名):获取定义变量对应的值,含BeanShell脚本生成变量: vars.put(变量名,变量值):生成新的变量或修改已存…
前面两篇文章分别讲述了 HTTP Mirror Server 和 Debug PostProcessor 的脚本调试实例.此文主要讲述第三种调试工具:DebugSampler,其主要是查看JMeter用户定义变量.JMeter属性变量,以及系统环境变量信息,在查看结果树对应调试器响应结果面板中查看信息. Debug Sampler添加路径:[添加 / Sampler / Debug Sampler],面板设置如下: 打开JMeter测试脚本,在样本线程之间添加调试器,最终样本结构如下所示: 执行…
前文 JMeter学习-034-JMeter调试工具之一---HTTP Mirror Server讲述了HTTP镜像服务器在调试请求入参时的实例应用.此文我们讲述另一种测试脚本调试工具的使用. 前置处理器或后置处理器中的 Debug Processor,也是常用的一个调试工具,其可以获取样本线程的相关信息进行展示,可通过查看结果树中的响应数据查看对应样本线程请求.响应及变量等信息.在查看的时候注意 Debug PostProcessor的查看作用域即可,在不用的位置,可查看的信息是不同,敬请参阅…
BeanShell脚本是JMeter自动化测试过程中不可或缺的提升技能之一,BeanShell脚本编写类似于Java脚本.它可以获取.修改系统定义或用户定义的变量值,同时也可以进行一些相应的测试数据处理工作(例如:前置处理器.后置处理器及响应断言中均存在响应的BeanShell应用),非常的方便. 下面就以修改上篇文章(JMeter学习-032-JMeter常见四种变量简介)中CSV Data Set Config 配置的参数化变量(def_cons)为例,来对BeanShell脚本应用做一简单…
此文为 JMeter 入门实战实例.我是 JMeter 初学菜鸟一个,因而此文适合 JMeter 初学者参阅.同时,因本人知识有限,若文中存在不足的地方,敬请大神不吝指正,非常感谢! 闲话少述,话归正题.本文将从 Chrome浏览器代理配置.JMeter HTTP代理服务器 配置.JMeter HTTP代理服务器获取HTTP请求.JMeter脚本创建.JMeter脚本运行 五个方面,分三大块对 JMeter 初级实战应用配以图文,进行详细步骤描述,真正的做到一步一步.从无到有. 一.WEB 浏览…
之前的文章中已经对如何录制 web 的请求进行了详细的描述,敬请参阅:JMeter学习-004-WEB脚本入门实战 同时,我们的手机应用(例如:京东.天猫.唯品会.携程.易迅 等等 App)所发出的请求,也可进行录制,只需要将手机连接的无线网络代理到本机(以 iPhone 为例,依次点击 [设置]/[无线局域网]/[连接网络信息,即网络右侧详细信息符号]/[HTTP代理]/手动],填写 服务器IP.端口 对应填写 JMeter 机器的 IP.JMeter HTTP 代理端口 即可),并将对应的端…
众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. 日常常见的线上监控几个简单的监控示例场景如下: 监控电商网站某个类目下的商品数量.若类目中商品的数量小于一定的数量,则认为需要认为查看商品池的商品是否正确: 监控商品的价格.当商品价格出现超出限定的波动幅度时,通知相应的商品负责人,对其进行确认,从而保证商品价格的正确无误. 监控商品在某一地域是否…
之前写过一篇通过[HTTP Cookie管理器]实现登录态操作的文章,使用时需要配置每个键值对(如下图所示),相对来讲配置比较繁琐.其实,我们也可通过在[HTTP信息头管理器]添加 Cookie 信息,从而实现登录态操作. 操作步骤如下: 1.获取 Cookie(通过浏览器等,如下 Firefox 浏览器所示),例如通过浏览器获取 Cookie 信息,保存到文本 cookie.txt 中…
Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”.意思是说,逻辑控制器可以控制采样器(samplers)的执行顺序.由此可知,控制器需要和采样器一起使用,否则控制器就没有什么意义了.放在控制器下面的所有的采样器都会当做一个整体,执行时也会一起被执行. 2.JMeter中的Logic Con…
首先,此文非技术类博文,为思路类的博文,敬请参阅,欢迎共同探讨! 今天在编写 JMeter 接口监控脚本时,遇到了一个问题,在解决问题的时候,思路出现了偏差,导致了自己在解决问题时,绕了弯,浪费了些时间.换句话说,是自己当时解决问题的思路出现了定式思维,没有及时变通,矬了 ^_^.具体的问题场景如下. 日常测试开发工作中,测试脚本对应的场景有很多,其中必不可少的场景就是重要的状态码验证.此时,不同的状态码对应着不同的页面显示,以及后续不同的业务逻辑处理操作,因而测试脚本需要对不同请求对应的请求响…
前面的博文中有对 JMeter 中的 响应断言 进行了讲解并实例演示,详情敬请参阅博文:JMeter学习-007-JMeter 断言实例之一 - 响应断言. 在 JMeter 中总计提供了如下几种 BeanShell 组件: Beanshell Sampler:单独的采样器. Beanshell PreProcessor:针对其他采样器的前置处理器.可以在采样器执行之前进行预处理操作,生成相关测试数据供采样器使用,相当于 TestNG 中的 before annotation. Beanshel…
前文讲述了通过 CSV Data Set Config 实现参数化配置(详情敬请参阅:JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置),在 JMeter 的配置元件中还有一个元件:用户定义的变量,通过 用户定义的变量,也可实现参数化的配置,通常用户定义的变量一般作为全局变量使用.下面就以 用户定义的变量 替换之前博文中的配置文件实现单一循环的参数化配置. 用户定义的变量添加路径:[ 添加 / 配置元件 / 用户定义的变量 ],其对应…
前文简述了 JMeter 如何通过 HTTP Cookie管理器,实现了在不执行登录操作的情况下,通过 Cookie 实现登录态的操作,具体请参阅:JMeter学习-012-JMeter 配置元件之-HTTP Cookie管理器-实现 Cookie 登录. 我们在日常的自动化测试脚本编写过程中,通常会有需要进行判断的逻辑,从而根据判断条件的真假,控制是否进行相应的操作.JMeter 提供了一些逻辑控制器(例如:ForEach控制器.事务控制器.如果(If)控制器.循环控制器等),以供我们在自动化…
前文我们讲过了若何获取登录后的 Cookie 信息,不知如何获取登录 Cookie 的朋友,敬请参阅我之前写的博文:Fiddler-005-获取 Cookie 信息.参阅上篇文章,获取到 Cookie 后,将 Cookie 保存到文本文件中,例如 userCookie.txt. 下面以购物App常用的收藏功能为例,讲述如何在 JMeter 中使用 cookie 进行登录态操作.具体的操作步骤如下所示: 第一步.录制查看收藏列表的 HTTP请求: 录制查看收藏列表的HTTP请求,只需启动 Fidd…
前两篇文章分表讲述了 后置处理器 - 正则表达式提取器概述及简单实例.多参数获取,相应博文敬请参阅 简单实例.多参数获取. 此文主要讲述如何引用正则表达式提取器获取的数据信息.其实,正则表达式提取器获取的数据,均可看做一个变量(单个数据,此处指所需获取的测试相关数据)或数组(多个数据),通过引用变量或者数组的数据,达到应用其数据的目的.下面针对此两种方式进行介绍. 第一种:单数据变量 但数据变量的应用比较简单,同我们日常 shell 脚本引用变量相同,引用样式:${引用名称}.例如要引用下图中的…
前文简述了通过后置处理器 - 正则表达式提取器 获取 HTTP请求 响应结果中的特定数据,未看过的亲,敬请参阅 JMeter学习-008-JMeter 后置处理器实例之 - 正则表达式提取器(一). 此文主要对正则表达式提取器的 正则表达式.模板.匹配数字,三者的关系,做进一步的讲解. 截取商品列表响应结果数据中的一段商品数据如下所示: { "sysNo": "2142717", "skuid": "487626525247"…
上文我们讲述了如何对 HTTP请求 的响应数据进行断言,以判断响应是否符合我们的预期,敬请参阅:JMeter学习-007-JMeter 断言实例之一 - 响应断言 那么我们如何获取 HTTP请求 响应结果中的数据呢?此文以获取类目 手机数码-手机通讯-苹果 结果列表中的第一个商品的系统编号为例演示(脚本基于上篇文章,请知悉). 如下为请求响应数据中的部分数据,我们最终要获取的数据为 "sysNo": "2142717" 中的 2142717. { "sys…
JMeter中的Logic Controller用于为Test Plan中的节点添加逻辑控制器. JMeter中的Logic Controller分为两类:一类用来控制Test Plan执行过程中节点的逻辑执行顺序,如:Loop Controller.If Controller等:另一类则与节点逻辑执行顺序无关,用于对Test Plan中的脚本进行分组.方便JMeter统计执行结果以及进行脚本的运行时控制等,如:Throughput Controller.Transaction Controll…
记录关于JMeter学习的内容.方便复习. 1)JMeter运行环境 因为JMeter是用纯java写的.所以运行的时候需要java的运行环境. 去java官网下载,点免费下载或所有Java下载都行,一个是jie一个是jdk jre是java运行环境.安装不需要自己去配置环境变量啥. jdk是java开发环境.里面带有jre.需要配置环境变量. 2)安装JMeter Jmeter官网下载最新版本的zip包.然后直接解压出来就可以.在bin目录下找到Jmeter.bat文件.运行即可 中文显示 找…
转载自 http://www.cnblogs.com/yangxia-test JMeter中的Logic Controller用于为Test Plan中的节点添加逻辑控制器. JMeter中的Logic Controller分为两类:一类用来控制Test Plan执行过程中节点的逻辑执行顺序,如:Loop Controller.If Controller等:另一类则与节点逻辑执行顺序无关,用于对Test Plan中的脚本进行分组.方便JMeter统计执行结果以及进行脚本的运行时控制等,如:Th…
Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”.意思是说,逻辑控制器可以控制采样器(samplers)的执行顺序.由此可知,控制器需要和采样器一起使用,否则控制器就没有什么意义了.放在控制器下面的所有的采样器都会当做一个整体,执行时也会一起被执行. 2.JMeter中的Logic Con…
Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”.意思是说,逻辑控制器可以控制采样器(samplers)的执行顺序.由此可知,控制器需要和采样器一起使用,否则控制器就没有什么意义了.放在控制器下面的所有的采样器都会当做一个整体,执行时也会一起被执行. 2.JMeter中的Logic Con…
3.JMeter测试计划要素 JMeter中一个脚本即是一个测试计划,也是一个管理单元.JMeter的请求模拟与并发数(设置线程数,一个线程代表一个虚拟用户)设置都在脚本文件中一起设置. 要素一:脚本中测试计划只能有一个 JMeter测试计划类似LoadRunner Controller中的测试场景,同一时刻场景固然只能有一个,JMeter脚本在GUI中显示时是树形结构,测试计划是根节点,根节点当然只能有一个. 要素二:测试计划中至少要有一个线程组 JMeter负载是通过线程组驱动的,所以计划中…
ASP.NET MVC 学习笔记-7.自定义配置信息   ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettings> 2 <add key="LogInfoProvider" value="Cookie" />//登录信息保存方式 3 </appSettings> 但是这些配置都是单个字符串信息,在某些情况下,无法做到灵活配置. 针对这种情况,使用…
JMeter学习(四)参数化 参数化:录制脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统. 这个时候就需要对用户名和密码进行参数化,使每个虚拟用户都使用不同的用户名和密码进行访问. 一.准备脚本,测试数据 1.录制一个脚本(可以用badboy工具录制),在jmeter中打开,找到有用户名和密码的页面.如下: 2.把我们需要“参数化”的数据,写入记事本,保存为.dat格式的文件,记事本另存为修改编码UTF-8.  注意用户名和密…
一.逻辑控制器简单介绍 Jmeter中逻辑控制器(Logic Controllers)的作用域只对其子节点的sampler有效,作用是控制采样器的执行顺序.放在逻辑控制器下面的所有的采样器都会当做一个整体,执行时也会一起被执行. JMeter逻辑控制器有17种 JMeter中的Logic Controller分为两类: 1.控制测试计划执行过程中节点的逻辑执行顺序,如:Loop Controller(循环控制器).If Controller(如果if控制器)等: 2.对测试计划中的脚本进行分组.…