51Testing软件测试论坛
标题:
SilkPerformer教程之脚本参数化
[打印本页]
作者:
沅芷湘兰
时间:
2013-9-18 13:47
标题:
SilkPerformer教程之脚本参数化
性能测试过程中免不了需要多用户,多数据来完成测试,所以就需要我们在脚本中做好充分的数据准备,以防止测试过程中出错,所以我们需要参数化。
在SilkPerformer中,所有的数据都被自动整合到一起了,所以做参数化的过程相对比较简单。
今天我们就以发帖的内容和标题来做参数化,首先把需要参数化的数据查找出来,如下所示:
"-----------------------------7dd31d120d6e\r\n"
"Content-Disposition: form-data; name=\"iscontinue\"\r\n"
"\r\n"
"0\r\n"
"-----------------------------7dd31d120d6e\r\n"
"Content-Disposition: form-data; name=\"atc_title\"\r\n"
"\r\n"
"testfatie001\r\n"
"-----------------------------7dd31d120d6e\r\n"
"Content-Disposition: form-data; name=\"atc_content\"\r\n"
"\r\n"
"testfatie001\r\n"
其中“atc_title”为发帖的标题,“atc_content”为发帖子的内容。下面我们就将“testfatie001”中的“001”用随机数字来做参数化,先选中“001”,再右键再选择“Customize Selected String”,如下图所示:
[attach]87329[/attach]
弹出如下窗口:
[attach]87330[/attach]
“Use Existing Parameter”是使用已经存在的变量;“Create New Parameter”是创建新的变量。选择“Create New Parameter”,直接“Next”,弹出如下窗口:
[attach]87331[/attach]
其中“Constant Value”是定义一个常量做为参数化的值;“Parameter From Random Variable”是生成一个随机数值;“Parameter form Multi-Column Data”是从参数化文件获取数值。选择“Parameter From Random Variable”,弹出如下窗口:
[attach]87332[/attach]
选择生成不同的随机数据类型,在这里我们选择“Integer numbers”,如下图所示:
[attach]87333[/attach]
“下一步”弹出如下窗口:
[attach]87334[/attach]
如上所示是生成一个从1到6000的随机数字,参数名叫“rRndUniN1”;“Show Preview”是可以看到生成的代码。如下图所示:
[attach]87335[/attach]
生成随机数字的三种方式“Per usage”每次使用产生一个新值;“Per Transaction”每个事务每次产生一个新值;“Per test”每次测试产生一个新值。
选择“Per Transaction”,完成。
生成的代码如下:
"Content-Disposition: form-data; name=\"atc_title\"\r\n"
"\r\n"
"testfatie"+pRndUniN11+"\r\n"
同时替换“atc_content”里的“001”,代码如下:
"-----------------------------7dd31d120d6e\r\n"
"Content-Disposition: form-data; name=\"atc_title\"\r\n"
"\r\n"
"testfatie"+pRndUniN11+"\r\n"
"-----------------------------7dd31d120d6e\r\n"
"Content-Disposition: form-data; name=\"atc_content\"\r\n"
"\r\n"
"testfatie"+pRndUniN11+"\r\n"
定义一个参数,如下所示:
dclparam
pRndUniN11 : string;
定义一个随机变量,如下所示:
dclrand
rRndUniN1 : RndUniN (1..6000);
将“rRndUniN1”产生的值赋给“pRndUniN11”,然后进行调用,如下所示:
begin
pRndUniN11 := string(rRndUniN1);
由于参数化过程中选择的是Int型的数据,在这个过程中SilkPerformer并没有帮我们处理好,在运行脚本时报错,提示拼接的部分一定要是String的类型,所以如上的代码已经做了从Into到String的转换。试运行成功(成功更改发帖内容),说明参数化成功!
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2