JMeter接口测试必知的参数化实现方式

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JMeter接⼝测试必知的参数化实现⽅式
⼀:参数化定义
什么是参数化?从字⾯上去理解的话,就是事先准备好数据(⼴义上来说,可以是具体的数据值,也可以是数据⽣成规则),⽽⾮在脚本中写死,脚本执⾏时从准备好的数据中取值。

JMeter提供了多种参数化⽅式,下⾯就其中常⽤的4种展开阐述。

⽅式适⽤场景
CSV Data Set Config 我们通常所指的参数化。

数据存储在⽂件中,参数化取值范围⼤,灵活性强
User Parameter适⽤于参数取值范围很⼩时
函数助⼿_Random等函数,⽣成随机数字和随机字符串实现参数化
User Defined
Variables⽤户⾃定义变量,更多⽤于设置全局变量
⼆:参数化实现
2.1 CSV Data Set Config
在JMeter中提起参数化,我们默认就想到CSV Data Set Config(以下简称CSV),CSV能够读取⽂件中的数据并⽣成变量,被JMeter脚本引⽤,从⽽实现参数化。

下⾯我们来详细探究⼀下。

CSV简介
线程组右键–>添加–>配置元件–>CSV Data Set Config,就创建了⼀个CSV,界⾯是这个样⼦的:
CSV实例
下⾯看⼀个实例。

⾸先有userInfo.txt的⽂件,放置在bin⽬录中,内容如下:
⽂件名:⽂件在bin⽬录中,使⽤相对⽬录
变量名称:两列数据分别属于mobile和password两个变量
分隔符:以逗号分割
在HTTP请求中引⽤CSV⽣成的变量的⽅式是${变量名}的⽅式:
运⾏脚本,察看结果树:
可以看到,⽂件中的数据被脚本成功引⽤。

JMeter使⽤CSV实现参数化就是这么简单。

注意事项
CSV使⽤中最常见的⼀个问题是⽂件路径不对。

当遇到这种问题时,因为运⾏脚本没有明显提⽰,许多⼈遇到后会感觉很懵,不知道问题在哪。

其实,仔细观察会发现右上⾓黄⾊三⾓处数字在增加,点击该区域便打开了⽇志,⽇志⾥记录了相应错误:File userInfo2.txt must exist and be readable,也就是提⽰参数化⽂件不存在或路径不可达。

2.2 User Parameters
User Parameters,也就是⽤户参数,也能实现参数化。

创建⽅式:HTTP请求上右键–>添加–>前置处理器(Pre processors)–>⽤户参数。

通过【添加变量】添加mobile和password两个变量,通过【添加⽤户】添加3组数据:
在HTTP请求中引⽤参数化的数据:
运⾏脚本,设置好的数据被成功引⽤。

2.3 ⽤户定义的变量
⽤户⾃定义的变量,也可以实现请求参数的参数化。

创建⽅式:线程组上右键–>配置元件(config element)–>⽤户定义的变量。

如上图,⽤起来也很简单,添加变量名和相对应的值就可以了。

后⾯引⽤变量和前⾯⼀样,使⽤${mobile}的⽅式。

【⽤户定义的变量】⼀般并⾮⽤来做HTTP请求参数化,⽽是⽤来定义全局变量,⽐如参数化⽂件路径、host、url等。

【⽤户定义的变量】创建在【线程组】上,则在线程组内⽣效,如果创建在【Test Plan】上,则对所有线程组⽣效。

2.4 Random
函数助⼿中的Random函数,
创建⽅式:Tools–>函数助⼿对话框–>选择⼀个功能–>_Random:
上图中,⽣成了⼀个表达式:${__Random(8000,9000,)},我们⽤这个表达式替换想要参数化的变量值,例如下图中的price变量:
运⾏脚本,察看结果树,可以看到效果:
这种⽅式适⽤于值在⼀定区间⽆规律随机取值的变量参数化,例如价格、数量、⼿机号码等,并不适⽤于有较强规则的变量进⾏参数化。

相关文档
最新文档