Jmeter——两种参数化

Posted 酸菜泡饭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter——两种参数化相关的知识,希望对你有一定的参考价值。

参数化前期准备:

1.先将badboy录制的脚本导进Jmeter:测试计划——(右键)打开...——导进Script.jmx(我放在桌面)  

    

  导进后的界面是下面这样的—>

      

2.如下图,在这张图上我做了几件事:

  a.禁用Step1,将Step1下面的内容放到线程组下面,禁用掉不符合我们需求的http请求。

  b.将我们要测的两个http请求页的“自动重定向”或“跟随重定向”前面的勾去掉,这里不要选中。

  c.将“同请求一起发送参数”下面参数“badboy”的编码勾上,如果你发现“query”对应的“值”中的参数不是你录制脚本时输入的数据,而是乱码,你的解决方法可以直接将乱码删掉,然后输入正确的数据就ok了。(不过还有种方法,呵呵,我是直接在录制完脚本后,在badboy里将编码的参数化直接改成gbk后,才将脚本导出来的,这样没有乱码可直接使用了。)  

3.添加“察看结果树”

    

4.脚本优化完后,可以运行脚本了,脚本运行完后如下图,现在我们察看一下脚本,“search”里输入你关键字,看是不是查出来了,查出来脚本就ok了...

 

Jmeter参数化——用户参数:

5.下面添加参数,线程组——(右键)添加——(右键)前置处理器——(右键)用户参数

    

6.设置参数“searchtxt”(参数名称自定义),我这里为参数设置两个关键字为添加用户1(badboy)和添加用户2(音乐)。

    

7.在“同请求一起发送参数”下面,用你设置的参数“${searchtxt}”替换“badboy”。

    

8.修改线程数(这里因为参数化里有两个关键字,为了让两个都能显示,我将线程数设的2),运行。

    

9.运行成功,结果如下:

    这是第一个关键字搜到的结果,关键字“badboy”—>

    

     这是第二个关键字搜到的结果,关键字“音乐”—>

    

 

Jmeter参数化——CSV Data Set Config

10.将用户参数禁用后,线程组——(右键)添加——(右键)配置元件——(右键)CSV Data Set Config

    

11.设置CSV Data Set Config

  filename:参数化数据文件存放的绝对路径(C:\\test.txt)

  Variable Names(comma-delimited):设置参数名称(search_test)

  其他内容保持默认。

      

 

  我将参数化数据文件(test.txt)放在C盘,打开test.txt,我放了两个搜索关键字“badboy”和“音乐”,注意这里要回车(因为同一个参数的数据都只能一行放一个)。

      

 

  还有另外一种情况(我下面并不详细说明了,看下吧),如果有两个参数存在(分别是),Variable Names(comma-delimited)里设置参数名称(search_test,searchtxt)必须用英文逗号隔开,而参数化数据文件(test.txt)里两个参数对应的数据要用逗号隔开。

     

 

12.用参数化替换掉“同请求一起发送参数”下的query的值(换成${search_test}),运行。

     

13.运行成功,结果如下:

  这是第一个关键字搜到的结果,关键字“音乐”—>

    

  这是第二个关键字搜到的结果,关键字“badboy”—>

    

  有没有发现运行结果的顺序和我们设置的关键字顺序不一致?其实这个我也不太清楚,有前辈说这个可以不用管,运行成功就行,额,暂时放着吧,等我知道后再来进行补充。

   两种参数化方法该怎么选择:如果你参数化的数据量不大的话选择用户参数方便一些,如果你参数化的数据量很大的话选择CSV Data Set Config应该方便些,其实两种方法的结果都一样,这个根据自己的情况来定。

以上是关于Jmeter——两种参数化的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter学习笔记3-参数化

JMeter参数化实例

jmeter参数化

JMeter脚本参数化 的方法用

性能测试基础---jmeter参数化关联事物检查的等

jmeter获取时间戳参数化的两种形式