内容发布更新时间 : 2024/11/17 2:26:33星期一 下面是文章的全部内容请认真阅读。
LoadRunner性能测试教程
第七课 LoadRunner常见问题解决方法
一. VuGen 的问题
1. 使用LoadRunner如何打开不同的浏览器录制?
答:录制时点击Start Record打开录制选择浏览器和地址页面如下图
然后选择要默认打开的浏览器。不设置时,默认打开Internet浏览器。 2. LoadRunner打不开火狐浏览器如何解决?
答:当有一天机器安装了好多浏览器时的时候,我们打不开浏览器怎么办,可以进入浏览器选项,切换到高级标签,去掉“第三方浏览器扩展”选项(去后要重启),然后再次运行vugen即可。
注:使用LoadRunner时要关闭杀毒软件。
3. 录制的脚本有乱码如何解决?
答:这是要重新进行录制,但在录制前要在recording options---advanced—surport charset里选中UTF—8即可。
4. 解决在web窗体中有Java script脚本时,不能再tree view视图中显示的方法?
答:将tools—generdl options—correlation—enable scripting and Java applets on snapshots viewer选中即可。 5. 录制时的注意事项
(1) 脚本中设置了检查点,要选中proforances—checks—enable image and text check
的操作。
(2) 集合点要和事务结合使用,集合点只能插入到action部分,vusers_init和
vusers_end中不能插入集合点。 6. 一些Web虚拟用户脚本录制后立刻回放没有任何问题,但是当设置迭代次数大于1时,
如果进行回放则只能成功迭代一次。为什么从第二次迭代开始发生错误?
LoadRunner性能测试教程
答:这种现象多是由于在“Run-time Setting”的“Browse Emulation”的设置中,勾选了“Simulate a new user on each iteration”及其下面的选项“Clear cache on each iteration”这两个选项的含义是每次迭代时模拟一个新的用户及每次迭代时清除缓存。
由于脚本迭代时,init和end只能执行一次,如果每次迭代都模拟一个新的用户并清除缓存,则用户登录信息将一并清除,因此迭代时可能会发生错误。 7. 虚拟客户脚本“Run-time Setting”中的线程和进程运行方式的区别?
答:如果选择“Run Vuser as a process”,则场景运行时会为每一个虚拟用户创建一个进程;选择“Run Vuser as a thread”则将每个虚拟用户作为一个线程来运行,在任务管理器中只看到一个mmdrv.exe,这种方式的运行效率更高,能造成更大的压力,时默认选项。 另外,如果启用了IP欺骗功能,则先在Controller中选中Tools菜单下的“Expert
Mode”,然后将Tools菜单下的“Options>General”标签页中的IP地址分配方式也设置为与Vuser运行方式一致,同为线程或进程方式。 8. 如何使用LoadRunner对wap网站测试时,在不改变ua的情况下用ie浏览器录制脚本? 答:在dos下敲命令regedit进入注册表,找到如下的路径信息。
HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\5.0\%user Agent。如下图
在user agent下面新建一个Platform 值填一个手机的,如:iPhone 9. Lr参数化时如何跟Oracle数据库连接?
答:首先我要连接的Oracle是在liunx下,我自己使用的是windows。要保证本机已经安装的Oracle的客户端,并且配置了本地NET服务。
(1) 再LR的VuGen中选择replace with a paremeter
LoadRunner性能测试教程
(2) 选择property (3) 选择Data wizard
(4) 选择Specify SQL statement manually,点击下一步,再点击create (5) 点“新建”,选择驱动:“Microsoft ODBC for Oracle”
(6) 默认的保存路径是:C:\\Program Files\\Common Files\\ODBC\\Data Sources,输入名字,点保存,点“下一步”,点“完成”,
(7) 输入用户名、密码、和服务器(注意此时的服务器为上述oracle客户端设置好的本地NET服务名)
(8) 点击确定就配置好了。 10. web service协议录制方法
答:录制的时候,选择web service协议,然后进入点击择url,输入要测试的接口地址.然后在点击
,在进入的页面选
,之后进入如下页面.
填写完成后,点击ok即可.
LoadRunner性能测试教程
二. Controller 的问题
1. 运行时的错误代码总结
(1)27796——指链接服务器被决绝,造成的原因为服务器关闭、重启或者是tomcat、Jboss配置文件中指定了最大的并发用户数的限制,一般tomcat的最大限制数是500个并发数。
(2)27791——指服务器过早关闭连接错误,造成的原因是由于服务器的配置不好引起的,若调整不好,就要优化程序和硬件了。
(3)27728——指超时运行的错误,LoadRunner中默认的超时时间是120秒,若在120秒内服务器没有对请求做出反应,就出现了此种错误,在运行中可以对超时设置的长一些,或多次迭代。设置延长超时时间的步骤是进入run-time setting对话框,依次进入Internet protocol 。然后点击options按钮进入高级选项设置,修改各类超时的时间。 若以上还不行就在runtime setting—Internet protocol :preferences—advanced 区域中设一个winlnet replay instead of sockets
(4)27498—指并发压力太大造成,属于正常现象,若并发压力很小,出现这种问题,是由于脚本某处错误引起,对于压力过大造成的此种错误,要对服务器优化。 (5)404—没有找到与请求的URL相符合的资源,即路径错误。 (6)500—请求服务器内部的错误。
(7)27727—连接超时错误,和27728一样。
(8) -84804—此协议没有相应的注册码,找个注册码破解一下即可,如:(你用的License不是Globe的,所以不能使用所有的协议,这儿有个Globe-100:
AEAMAUIK-YAFEKEKJJKEEA-BCJGI不过只支持100人,凑或用一下吧!这个是web-html协议的,支持10000用户web-10000:AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB Globa-1000用户 AEACFSJI-YASEKJJKEAHJD-BCLBR)。
2. 在添加完 Load Generators 机器时,连接老是失败;添加的机器明明已经安装了 loadrunner,并且网络通讯正常。
解决方法:在安装loadrunner 的第七步骤,应该选择第2 项,如果选择了第一项, 就会有这种问题。重新安装一下即可。
3. 在 VuGen 中运行良好的脚本,到Controller 中运行却出问题。
解决方法:这种问题可能会遇到。为了确定问题出在Controller 中的场景,而不是脚本的问题,你应该在所有的Load Generators 机器上使用VuGen 运行测试脚本,确保都能够运行正确。因为VuGen 和Controller 运行的机制不一样。在VuGen 中运行时使用的是完整的浏览器,而在Controller 中运行时使用的只是浏览器的基本的部分。 4. 添加了 Windows Resources 计数器后,却看不到实时的数据。
解决方法:要得到监视的数据,必须要在被监视的服务器(Web Server)上获得管 理员权限。最简单的方法是在“网络邻居”中以administrator 身份登陆Web Server。 当然使用下面的控制台命令也可以:net use \\\\<机器名> 然后登陆用户名和密码即 可。(登陆的用户名必须具有管理员权限)
5. 添加了一些默认的性能计数器后,出现了错误。
解决方法:可能是一些LoadRunner 默认的计数器在WebServer 上已经不存在的原 因,尤其是数据库的计数器方面。简单的解决方法,就是删除有问题的计数器,添 加比较接近的计数器(可能需要参考Windows 帮助或者数据库的帮助)
LoadRunner性能测试教程
6. Controller中设置了用户并发数量,但是运行时为何初始化的用户数量少于实际数量?
解决方法:主要时设置问题。在Tools→options→Run-time setting中可以设置每次
最多初始化的虚拟用户。如果需要100个并发用户,则将该值设置为大于100的数值。另外,注意LoadRunner相关协议License的更新,确保使用的License能够允许所需要的并发用户数量。
7. 如何让场景的用户执行发生错误继续运行,以保证不间断进行压力测试?
解决方法:用VuGen打开虚拟用户脚本后,进入“Run-time Settings”对话框后,依次进入“General→Miscellaneous”,可以看到Miscellaneous设置中关于“Error Handling”的配置。勾选“Continue on error”即可让虚拟用户发生错误继续运行。
8. 为什么Windows系统中的CPU、内存等资源仍然充足,但是模拟的用户数量却上不去?
解决方法:在Windows计算机的标准设置下,操作系统的默认限制只能使用几百个Vuser,
这个限制与CPU或内存无关,主要是操作系统本身规定了默认的最大线程数所导致。
要想突破Windows这个限制,须修改Windows注册表。以Windows XP Professional为例。
(1)打开注册表后,进入注册表项HKEY_LOCAL_MACHINE中的下列关键字:
System\\CurrentControlSet\\Control\\Session Manager\\SubSystems。
(2)找到Windows关键字,Windows关键字如下所示: %SystemRoot%\\system32\\csrss.exe
bjectDirectory=\\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16
SharedSection=1024,3072,512关键字的格式为xxxx,yyyy,zzz。其中,xxxx定义了系
统范围堆的最大值(以KB为单位),yyyy定义每个桌面堆得大小。
(3)将yyyy的设置从3072更改为8192(即8MB),增加SharedSection参数值。通过对注册表的更改,系统将允许运行更多的线程,因而可以在计算机上运行更多的Vuser。这意味着能够模拟的最大并发用户数量将不受Windows操作系统的限制,而只受硬件和内部可伸缩性限制的约束。