jmeter通过参数文件、循环组件实现多账号登陆

在jmeter中当配置好登陆接口后,如果需要多账号进行登陆时,可以通过引用参数配置文件和循环的方式来实现单一接口通过循环调用多个参数,来实现多账号登陆的目的,不然就需要一个账号配置一个接口,费时费力,通过引用参数配置文件和循环可以节省工作。

我这边就以登陆接口为例,其它情况下对参数的引用都是相通的。

1、当jmeter已完成录制脚本、配置脚本等相关组件且可以正常返回相应数据后,首先新建一个txt文件,在文件中配置需要引用的参数,我这边配置了三个,用户名、密码、检查点参数,如下图所示。

每列参数之间使用tab键隔开,且最后不需要留空白行(loadrunner需要,不要搞混了)如果数据过大可以通过excel配置后直接复制到txt文件中也行。

2、当需要引用的参数文件配置完成后查看是对整个线程进行循环还是对线程组中的单个接口进行循环,我这边是对单个登陆接口进行循环,因此在改接口的事务组件中先添加一个循环控制器

点击该接口所在的事务-右击-逻辑控制器-循环控制器

3、循环控制器添加完成后进行配置,一般来说引用的参数文件中有几组参数(多少行)就配置多少次循环,如步骤1所示我配置了五组参数,则循环五次

4、循环控制器的配置完成后,需要在循环控制器下添加 CSV数据文件设置组件,用于引用步骤1创建文件中的参数

循环控制器选中右击-添加-配置元件-CSV数据文件设置

5、添加CSV数据文件设置组件后,进行组件进行配置

5.1 文件名:输入步骤1中参数文件的路径(D:/Program Files/apache-jmeter-5.1.1/bin/jiaoben/user.txt)

5.2:文件编码:一般来说如果参数文件中有中文则使用utf-8,但是我这边不用也行,用了反而出现乱码,因此这一行空着,不选。

5.3:变量名称(英文逗号间隔):这一行填写参数文件中每一列参数的引用变量名称,后面可以通过${},来进行调用,我这边有三列参数,填写:yhm,mm,name 注意中间用英文逗号间隔

5.4:忽略首行:当参数文件中未设置变量名称时使用默认的False,步骤1的参数文件中我只添加了需要引用的参数,因此直接用默认的就行,不做变更。

5.5:分隔符:因为我步骤1中参数文件每列参数是通过tab键隔开的因此需要填写 \t 如果是逗号隔开则填写逗号,这取决于用什么符号隔开。

5.6:后面的字段就直接使用默认的即可,不再做特殊变动。

6、CSV数据文件设置组件配置完成后,需要将登陆接口放在循环控制器下,且CSV数据文件设置组件要在登陆接口的上方,从属排列如下图所示。

注意:在CSV数据文件设置组件和登陆接口中间还有一个计数器组件,该组件是为了在循环时给定义的数值自增的,设置一个初始值,每次循环加一,该自增参数用在获取循环接口时获取输出数据到指定文件中。该组件用法在另一个教程中,点击jmeter分类可以查看到。

7、当调整好登陆事务-循环控制器-CSV数据文件设置组件/计数器/登陆接口,的排列顺序后,则需要对登陆接口进行配置,将原来的用户名和密码通过{yhm} {mm}的方式引用参数文件中的参数

8、因为我这边设置了登陆接口的响应断言,因此需要在响应断言也配置一下引用参数在测试模块中检查文本将需要替换参数设置为:${name}。

注意: {yhm} {mm} ${name} 这三个引用参数都是在步骤5中 CSV数据文件设置组件中定义的引用名称。

9、配置完成后,点击运行,即可通过循环方式让登陆接口依次调用参数文件中数据。

${num}通过 计数器组件 实现的,赋予初始值后每次循环加一,在登陆接口名称处以及提取响应内容(正则表达式提取器)处使用的,用于获取每次循环返回的接口数据并写入指定文件中。

计数器组件配置图如下所示:

相关推荐
测试人社区-千羽2 小时前
48小时攻克测试岗——闪电面试极速备战手册
人工智能·python·opencv·面试·职场和发展·单元测试·压力测试
hgz07104 小时前
JMeter性能压测执行与Linux环境部署
java·linux·jmeter
2501_924064117 小时前
如何测试接口最大并发量及推荐实用工具
测试工具
玩转数据库管理工具FOR DBLENS8 小时前
DBLens:开启数据库管理新纪元——永久免费,智能高效的国产化开发利器
数据结构·数据库·测试工具·数据库开发
2501_924064119 小时前
高并发系统卡顿?全链路压测平台如何精准定位性能瓶颈
功能测试·压力测试
微尘hjx10 小时前
【目标检测软件 01】YOLO识别软件功能与操作指南
人工智能·测试工具·yolo·目标检测·计算机视觉·ai·pyqt
测试人社区-千羽11 小时前
Apple自动化测试基础设施(XCTest/XCUITest)面试深度解析
运维·人工智能·测试工具·面试·职场和发展·自动化·开源软件
测试人社区—小叶子11 小时前
移动开发新宠:用Flutter 4.0快速构建跨平台应用
运维·网络·人工智能·测试工具·flutter·自动化
数据科学小丫13 小时前
浏览器 driver (Chrome & Edge)驱动安装、Selenium 安装,使用Selenium进行网页自动化操作与数据抓取(Edge)
selenium·测试工具·自动化