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

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

相关推荐
敬业小码哥3 小时前
记一次:postman请求下载文件的使用方法
测试工具·postman
卓码软件测评5 小时前
【网站测试:CORS配置错误引发的安全风险及测试】
功能测试·安全·web安全·压力测试·可用性测试·安全性测试
测试老哥13 小时前
pytest+requests+allure自动化测试接入Jenkins学习
自动化测试·软件测试·学习·测试工具·职场和发展·jenkins·pytest
Mike_Wuzy1 天前
【音频信号发生器】基本应用
测试工具
程序员三藏1 天前
Selenium+python自动化测试:解决无法启动IE浏览器及报错问题
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
Warren981 天前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
zzc9212 天前
Wireshark获取数据传输的码元速率
网络·测试工具·wifi·wireshark·路由器·802.11n·物理层参数
小丁爱养花2 天前
接口性能测试工具 - JMeter
测试工具·jmeter
甄超锋3 天前
python sqlite3模块
jvm·数据库·python·测试工具·django·sqlite·flask
zzc9213 天前
TLSv1.2协议与TCP/UDP协议传输数据内容差异
网络·测试工具·安全·wireshark·ssl·密钥·tlsv1.2