说起接口测试,相信大家在工作中用的最多的还是Jmeter。
JMeter是一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA 等多种协议。
在做接口测试时,根据不同的业务场景,经常需要对接口传参数,比如常见的GET、POST请求。为了模拟更真实的用户使用场景,在传参数时,需要采用动态的参数,比如每次调用接口时,需要传入当前的时间戳;每次查询商品信息时,传入一个随机的商品id等。这个时候就要用到Jmeter的参数化。下面来介绍下Jmeter常用的一些参数化方式:
1、随机值
在Jmeter的“函数助手”中,提供了随机数函数Random,可以产生一个指定范围的随机值。
配置上随机值的最小值和最大值,点击生成,就能产生一个随机数函数,并且已经拷贝到内存中,在需要使用参数化的地方直接粘贴即可。
2、随机字符串
在某些业务场景中,需要传入一个随机字符串,比如在注册信息时,需要传入一些个人简介,这个时候可以用随机字符串来代替。
在“函数助手”中,找到RandomString函数:
解释:
Random string length:生成的随机字符串长度;
Chars to use for random string generation:随机字符串从哪些字符中生成;
点击生成,拷贝到需要使用的地方即可。
3、时间戳
很多接口里经常需要传时间戳,并且要求是当前时间戳,在Jmeter的函数助手里,有专门的时间戳函数time。
直接点击生成,就能产生一个时间戳函数,将它粘贴到对应的参数位置即可。
除了获取时间戳外,time函数还支持按照一定的格式去展示时间,比如”yyyy-MM-dd HH:mm:ss”。
yyyy:代表4位数的年份
MM:代表2位数的月份
dd:代表2位数的天数
HH:代表2位数的小时
mm:代表2位数的分钟数
ss:代表2位数的秒数
4、唯一字符串UUID
在很多业务场景中,接口需要传入一个唯一的,不重复的字符串,比如发送聊天消息接口,通常都有一个消息id,要求这个id不能重复,这个时候可以使用uuid来解决。
UUID是指在一台机器上生成的字符串,它保证对在同一时空中的所有机器上都是唯一的,具备唯一性。
Jmeter里提供了uuid函数,可以很方便的获取uuid。
好了,以上就是Jmeter里常用的一些参数化函数,Jmeter还支持很多其他的参数化方式,后续的文章会专门介绍下。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!