小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

今天,我突然收到了勤奋好学的小学妹发来的信息,我二话不说就打开了信息开始跟学妹聊天。果然,又是帮她找错的一天。

不过,往往收到的都是完全空的,这让我不得不先修改好错误再帮小学妹看代码。

渐渐地,面对越来越长代码的参数获取已经力不从心,他想请你帮助他写一个小程序,来实现Http请求模拟和响应参数获取。小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

同一文集

简单说明


参数化的一般用法就是将脚本中的某些输入使用参数来代替,在脚本运行时指定参数的取值范围和规则。
关于Jmeter的参数化请求包括以下几种方式:

  • 用户参数
  • BeanShell Sampler
  • 用户定义的变量
  • CSV Data Set Config
  • 随机函数

用户参数


操作:添加 -> 前置处理器 -> 用户参数
调用方式:${defineCount}

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

用户参数

PS:多用户仅对多线程有效,单线程只取第一个用户的值

BeanShell Sampler


操作:添加 -> 前置处理器 -> BeanShell Sampler -> 在Script中按以下格式设置参数
调用方式:${defineCount}

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

BeanShell Sampler

用户定义的变量


操作:添加 -> 配置元件 -> 用户定义的变量
调用方式:${defineCount}

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

用户定义的变量

CSV Data Set Config


操作:添加 -> 配置元件 -> CSV Data Set Config
调用方式:${defineCount}

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

CSV Data Set Config

PS:如果需要使用多个参数的话,需在Variable Names一栏以Deliniter定义的符号(一般此项为逗号[ , ])进行分割,当然对应的csv文件数据源,每一行也要以相应的格式进行分隔

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

多个参数

随机函数


操作:菜单栏上选择选项 -> 函数助手对话框 -> 配置参数并复制生成随机字符串 -> 粘贴字符串到目标位置
调用方式:${__RandomString(2,123456845612314578456123,)}

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

打开函数助手对话框

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

随机函数字符串生成

将复制的字符串,粘贴到目标位置上,如下所示:

小学妹追着让我给她讲讲Jmeter压力测试系列(三) - 参数化请求

粘贴随机函数字符串

写在最后,希望以上内容能帮到您,不定时总结和记录个人的经验。您的支持是我前进的动力,经验分享是美德

如果对软件测试有兴趣,想了解更多的测试知识,解决测试问题,以及入门指导,
帮你解决测试中遇到的困惑,我们这里有技术高手。如果你正在找工作或者刚刚学校出来,
又或者已经工作但是经常觉得难点很多,觉得自己测试方面学的不够精想要继续学习的,
想转行怕学不会的,都可以加入我们644956177。
群内可领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!