参数化前期准备:
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):设置参数名称(searchtxt)
其他内容保持默认。
我将参数化数据文件(test.txt)放在C盘,打开test.txt,我放了两个搜索关键字“badboy”和“音乐”,注意这里要换行(因为这两个关键字是同一个参数下的)。
12.用参数化替换掉“同请求一起发送参数”下的query的值(换成${search_test}),运行。
13.运行成功,结果如下:
这是第一个关键字搜到的结果,关键字“音乐”—>
这是第二个关键字搜到的结果,关键字“badboy”—>
有没有发现运行结果的顺序和我们设置的关键字顺序不一致?其实这个我也不太清楚,有前辈说这个可以不用管,运行成功就行,额,暂时放着吧,等我知道后再来进行补充。