jmeter试用记录-参数化和关联

一般来说,用录制功能录制的脚本都需要经过编辑,性能测试脚本的编辑主要涉及到参数化和关联这两部分,jmeter支持这两个功能。

一、参数化

 参数化是指用参数替代测试脚本中的字符,这里介绍两种常用的参数化方式,随机数和文件读取。

1、随机数

  打开录制好的脚本,点击Jmeter的“选项”,选择“函数助手对话框”,在“选择一个功能”的下拉框中选择“_Random”,然后在“函数参赛”中会出现三个参数有用户来设置,第一个参数是“一个范围内的最小值”,即所要取的随机数的最小值,我们设置成1;第二个参数是“一个范围内的最大值”,即所要取的随机数的最大值,我们设置成100;第三个参数是“函数名称”,用于和其他随机数进行区分,我们设置成Random。设置好上面的三个参数后,点击“生成”按钮,这样就会在对话框的最下面生成一个字符串“${__Random(1,100,Random)}”,然后在脚本中找到要替换的参数,把它的值换成前面生成的字符串就可以了,然后每次运行的时候,这个参数会变成一个1到100之间的随机数。

2、读取文件

  _StringFromFile,这个函数是从一个文件中取到一个字符串,这个函数和LoadRunner中的File变量差不多,不过LoadRunner可以直接从数据库中查询记录,而Jmeter需要我们借助第三方工具生成文本文件。生成文本文件后就可以设置这个函数的参数了,参数分别是“输入文件的全路径”,“函数名称”,“Start file sequence number”,Final file sequence number”。第一个参数是文件的完整路径,即文件路径+文件名.扩展名(可以有空格和中文)。第二个是参数的名字,用于和其他同类参数的区分,第三个参数是文件开始的序号,也就是文件读取的其起始行数。第四个参数是文件的结束序号,也就是要读取文件的最后行。假如咱们生成的文本文件有200行,如果开始序号设置成50,结束行设置成150,那么这个函数会按顺序从第50行,一直读取到150行,如果测试的循环次数超过了文件行数,比如循环了102次,那么最后一次循环读取的文件内容和第一次的一样,函数会自动循环读取。文件的起始序号和结束序号也可以不用设置,这样函数会从第一行读取到最后一行,然后再循环读取。

二、关联

  关联就是从前面一个请求的response中取得值,作为下一个请求的参数。在脚本编辑中,常常会遇到这种情况,比如说测试脚本要删除一个日志,需要得到日志的id,这个id事先肯定不知道的,需要从前面的response中取得。

  jmeter中的关联用函数_regexFunction实现,函数字符串可以通过“函数助手对话框”生成。比如要从http://qatest9.blog.163.com/blog/edit/dwr/call/plaincall/BlogBean.getBlogsByRank.dwr这个请求的反馈信息中得到日志的id,参数设置如下:

  1、正则表达式:s0.id="(.*)";如果response中有类似s0.id="_fks_JV8Uodp1O7nE9VFbRgYT5w==";这样的字符串,那么参数的值就为:_fks_JV8Uodp1O7nE9VFbRgYT5w==

  2、参数的组别:如果前面的正则表达式取了不止一个参数(如s0.id="(.*)";s0.ip="(.*)";),那么这里需要制定参数的组别,如果该参数为 $1$,则表示取得第一个值(id),$2$表示取得第二个值(ip)。

  3、第几个参数:组别设置好以后,还有一个问题,如果response中有两个地方都能够匹配s0.id="(.*)";s0.ip="(.*)";这个字符串,那么这里可以选择取第几次匹配,选择1表示第一次匹配,依次类推。还可以选择All,表示选择所有匹配,这个不大用到,具体可以看jmeter的帮助。

  4、当3步骤的参数选择ALL时用到,不再详述。

  5、默认值:如果response中没有匹配值,就使用该默认值。

  6、看不懂

三、附注

  利用“函数助手对话框”,可以生成很多类型的参数,具体可以查看帮助。

  值得注意的是,“函数助手对话框”只是用来生成函数字符串(如“${__Random(1,100,Random)}”),并不存储函数。事实上,jmeter的函数所需要的信息都包含在函数字符串当中。所以,即使不使用“函数助手对话框”,如果你能够徒手在脚本中写出函数字符串(如“${__Random(20,30,Random1)}”),该字符串在脚本中也能生效的。

 

参考条目:

Jmeter变量参数化及函数应用 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值