从上图运行的结果可以很清楚明了的看出其作用,起始位是不包含的,结束位是包含,配置为1和3,所以运行结果是取2和3的参数来请求接口。
提取参数提取参数同样以博客为例,每个人的博客都有三个列表,阅读排行榜、最新评论、推荐排行榜,刚好可以用于此demo。
可以看下数据,都是一个a标签,如下所示:
通过用户定义变量的方式,大家肯定有思路,提取参数如何实现了。
我们通过正则,将15条数据提取,并把对应参数配置到ForEach Controller即可。
那我们就先实现正则匹配这一步,正则相关知识自己另外补充,也可以参考我以前的博文,今天就不赘述了。我们观察要提取的数据,都是有规律可循的,添加正则提取器,并配置如下所示:
这里需要注意的是,Match No.,我们在这里配置为-1,因为需要符合条件的所有值:
配置为0,表示随机值;
配置为正整数,表示取匹配到的第几个数据;
配置为-1,表示取匹配到的所有数据。
正则配置好后,可以运行脚本,看下是否正常提取到了数据,调试也是写脚本的一部分工作。
我们再来配置ForEach Controller,如下所示:
再将输出变量引用到对应接口参数中,如下所示:
我们来运行脚本,看下整体效果,如下所示:
如上所示,分别请求了15次接口,使用起来是不是很方便,到此,是不是已经可以上手使用起来了,参数化就是这么简单。
Loop Controller Loop Controller简介Loop Controller,功能扩展性不强,只能配置为无限循环和具体循环次数,主要用于测试接口重复调用的情况。
我们通过配置界面来了解下,如下所示:
根据上图,来了解下参数配置:
Loop Controller:元件名称
Name:控制器名称
Comments:注释
Loop Count:设置运行次数,Infinite 勾选表示为永久运行
Loop Controller使用Loop Controller使用很简单,我们看了配置界面就很清楚,无非就是配置循环次数,或者一直无限循环。
指定循环次数我们通过案例来直观的看下效果,我们配置循环次数为2,并运行脚本,运行结果如下所示:
我们从上图可知,循环次数为2,每个接口调用了2次。比如有些业务,后端接口有做重复调用校验的,就可以通过这种方式来验证了。
无限循环配置为无限循环的话,顾名思义,那肯定是一直会运行脚本,除非手动停止,脚本才会停止运行。
好了,今天的2种循环控制器就介绍到这里,综上所述,如果用于参数化的话,大家肯定会使用ForEach Controller。2种控制器,各有功能,各取所需,希望对有需要的博友有所帮助。