Jmeter 参数化功能实现注册登录的数据驱动

 

 

                                                    场景抽离

图片

 

首先我们需要对测试的场景进行抽离,明确场景的接口、参数和比例。通过查看API文档,我们抽离除了如下注册的业务流程:

图片

总结如下:

  • 业务流程:验证码->注册->登录,

  • 接口比例:这三个接口场景的比例为1:1:1关系

  • 数据传递:获取的鉴权信息需保存后未后续的请求做数据支持

                                                 实操演示

图片

3.1 IP + 端口的数据驱动

在每一个接口请求中,都需要输入请求的ip和端口,这样费事费力。因此jmeter提供了CSV Data Set Config来将数据从外部文件读取, HTTP Request Defaults设置请求默认值,这两种方法配合使用便可完成IP + 端口的数据驱动

CSV Data Set Config从外部文件读取数据

1、如下图位置选择

图片

2、设置CSV Data Set Config

首先创建好需要导入的数据文件,这里需要的是 IP 和端口:
 

图片

设置CSV Data Set Config

图片

设置说明:

  • Filename:填入你需要导入的文件地址

  • File encoding:选择编码方式,特别是有中文的时候记得要选UTF-8

  • Variable Names:设置变量名,要和数据文件中的格式一一对应

  • Ignore first line:是否忽视第一行,有时候我们数据文件的第一行可能是个说明title,并不是我们实际需要的数据,这个时候就可以在此选择true,将其忽略

  • Delimiter(use '\t' for tab):如果你的数据文件的数据之间使用tab进行分割的,这里就填\t用来说明是tab分割,如果是用逗号,分割的,那么就直接填入逗号,即可

HTTP Request Defaults设置请求默认值


1、选择HTTP Request Defaults

图片

2、设置HTTP Request Defaults参数化


将请求的ip和端口进行参数化,格式是${参数};参数要与CSV Data Set Config中设置的保持一致,这样设置好以后,后面所有的请求都可以不用再填写ip和端口了

图片

3.2 前置处理器JSR223 PreProcessor

查看项目API文档,知道了获取验证码的接口需要传电话号码作为参数,而性能测试需要很多并发,所以电话号码肯定是通过参数传递进入,且不可重复;

图片

为了解决上述问题,我们可以引入前置处理器JSR223 PreProcessor,他可以在其中写入Java代码运行,这样就很方便造数据了:

图片

另外在login接口返回值需要获取token,将获取的token存入指定文件中,以备后面的请求使用

图片

图片

3.3 返回值获取传递

JSON Extractor

在上述接口中,会返回验证码用于注册;同样的在登录接口中会返回token用于鉴权;那么就可以利用JSON Extractor来完成


1、添加JSON Extractor

图片

2、设置变量名和json路径

图片

3.4 结果调试

有时候想看下脚本对不对,可以利用Debug Sampler来进行调试

图片

可以看到所有的变量值,最终完成脚本调试,顺利通过。

图片

     

                                                    推荐学习

图片

 

 感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接免费拿走:
① 2000多本软件测试电子书(主流和经典的书籍应该都有了)
② 软件测试/自动化测试标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python编程语言、API接口自动化测试、web自动化测试、App自动化测试(适合小白学习)
         

 
⑤ Python学习路线图(告别不入流的学习) 
上图的资料 在我的QQ技术交流群里(技术交流和资源共享,广告进来腿给你打断)
可以自助拿走,群号768747503备注(csdn999)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦
                                  

                                         一定一定一定要备注暗号:CSDN999
                                           ————————————————
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值