对Badboy脚本使用MySQL中的数据进行参数化

步骤:

1.安装好MYSQL,创建数据库、表、数据。

2.安装mysql-connector-odbc

3.在控制面板的管理工具中创建数据源。我使用的Badboy版本是BadboyInstaller-2.1.2_wm,经实测无法识别64位数据源,因此应创建32位数据源:

选择对应的MySQL驱动,完成

配置数据源信息:

测试一下连接是否正常:

创建完成:

4.使用Badboy录制脚本,仍以搜狗搜索为例,先录制一个关键词固定的脚本,并调通

接下来要在Badboy中添加数据源,有两种方法:

一、在Tools菜单中添加

选中在控制面板中建的数据源

这时会列出数据源关联的数据库中所有的表,选中需要的表

系统给出提示信息后会列出表中的字段,选择转换的设置,确定

这时表中的字段就以变量的形式添加到了脚本中,双击对应的变量,可以看到变量的值

将原先录制的脚本中,请求的关键字替换为变量:

相应地,修改断言的预期结果:

右键单击Step1,在Properties中设置遍历变量的每个值

点击"Play All",运行脚本,通过

 

方法二、在左下角的控制面板中,切换到Tools选项卡,右键单击"Data Source-Properties",在弹窗中选好数据源

点击change按钮,选择表

选好后右键单击Data Source,Add  to Script

生成Load Data的步骤,把其移到步骤的前面。因为脚本是从上到下按顺序执行,所以取数据的步骤一定要放到前面

把关键字常量换成变量,变量名就是字段名

设置遍历变量的所有值的操作和方法一是一样的,但是要注意的是,应该在设置前先运行一遍脚本,否则脚本没有加载过库里的字段,识别不到字段,“For each value of variable”就是空的

替换断言的预期结果之后,就可以了。

如果想使用SQL语句选取字段中的值,就在Load Data中选择Using SQL,并输入SQL即可

 

最后需要强调一点。Load Data的步骤必须放到Step的外面

如果放到了Step里面,每次进入step,都要重新load data,虽然可以取出全部的数据,但是每次请求发出的都是第一条数据。如果又设置了遍历变量中的元素,那么永远发不出第二个值。崴啦!这是一个死循环!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章