SilkPerformer使用点滴[1] 软件测试
一、录制时脚本为空的解决办法
使用SilkPerformer最常见的问题是在用录制时,录制不上内容,Functions数始终为0,脚本为空。
1.检查注册表中的Key:HKEY_LOCAL_MACHINE | SOFTWARE | Microsoft | Windows NT | CurrentVersion | Windows | AppInit_DLLs,其值应为:qaphooks.dll。如果在qaphooks.dll后面有逗号或者空格,必须删除逗号或空格。
2.检查注册表中的Key:HKEY_CURRENT_USER | SOFTWARE | Microsoft | Windows | CurrentVersion | Explorer | BrowseNewProcess,其值应为:yes。
3.检查注册表中的Key:HKEY_LOCAL_MACHINE | SOFTWARE | Microsoft | Windows | CurrentVersion | Explorer | BrowseNewProcess,其值应为:yes。
4.如果修改注册表的上述项后,function还一直为0,再检查SilkPerformer的profile或proxy设置:
1)打开SilkPerformer,选择Settings | System | Recorder | Application Profiles;
2)编辑您所使用的浏览器设置;
3)在protocol selection区内,确保Web的checkbox是选中的,然后选择“Web Settings”按钮;
4)确保Winsock的选项是W2_32.dll。
二、与Oracle、LoadRunner端口冲突的解决办法
在装了Oracle或LoadRunner的机器上安装SilkPerformer,会造成SilkPerformer与Oracle、LoadRunner通信端口冲突,如下图所示:
Oracle XDB(XML数据库)Http服务的默认端口是8080,而SilkPerformer脚本记录器的http协议监听端口也默认的是8080。
解决此端口冲突的方法有两种,一是更改Oracle XDB Http服务的端口;另一种方法就是更改SilkPerformer脚本记录器的Http协议监听端口。下面就简要介绍如何更改SilkPerformer脚本记录器的http协议监听端口。
1)打开SilkPerformer,选择Settings | System | Recorder | Proxies;
2)选择HTTP协议,点“Edit”按钮编辑其设置;
3)把“listen port”编辑框中默认的8080,改为其它端口值就可以了,如18080。
安装了LoadRunner的机器会占用端口1080,而SilkPerformer脚本记录器的Socks协议监听端口也默认的是1080。解决此端口冲突的方法与上面相同。
三、应用登录问题
在很多客户的应用中不允许同一个用户登录多次,那么如果需要在登录这个业务点上加压的话,就必需对登录的用户名和密码进行参数化。但是仅仅做了参数化还是不够的,因为如果让SilkPerformer的脚本在执行过程中自己去随机的取用户名和密码时,还是有可能会取到同一个用户名和密码,这样就冲突了,所以还必需要添加一些限制。
FileCSVLoadGlobal(hfile,csvFile,",");//导入参数化文件
FileGetRow(hfile,GetUserId()); //根据虚拟用户的ID来取参数化的数据
sAclearcase/" target="_blank" >ccountName:=FileGetCol (hfile,1,10);//取数据的第一列
sPassword:=FileGetCol (hfile,2,10); //取数据的第二列