软件性能测试工具LoadRunner常见问题说明
概述
最近再学习软件测试中的性能测试,已经9102年了,使用到的工具也已经是LoadRunner12+了,遇到的一些使用上的问题,这里记录一下,以便日后再次碰到能够及时解决。
这次在性能测试的过程中,遇到的问题如下:
录制方式的选择--------HTML-Based/URL-Based
浏览器兼容问题
IE/Chrome/Firefox浏览器卡死崩溃问题
IE录制脚本为空问题
Chrome录制脚本为空问题
1. Web(HTTP-HTML)协议的两种录制方式
1.1 脚本录制的基本原则
充分考虑脚本的执行效率
性能测试脚本关注的是如何模拟用户的真实行为。因此,用于测试的脚本应该接近用户的真正操作。这就要求录制后的脚本在修改过程中不要增加过多内容,尤其不能降低其效率。例如尽量不要增加循环、检查等操作,除非这些操作是必须的。
录制重要的用户业务
要录制常用的、使用频率较高的业务来进行测试,不要一股脑的什么都要录制。
选择你所需要的进行录制
在web性能测试中,如果有的操作对于用户所关注的事物没有什么影响,那么可以不进行录制。例如一些查询事物中,选择查询条件页面的请求过程可以不录制,但对于一些要传递查询参数的过程则必须要录制。
1.2 HTML和URL based script介绍
HTML based script:可以为每个用户请求生成单独的函数
URL based script:可以捕获所有作为用户操作的结果发送到服务器的HTTP请求,然后一条条记录下来,它甚至可以捕获非HTML应用程序,比如小程序和非浏览器应用程序
HTML这种录制方式录制出来的脚本直观,易于理解和维护。而URL生成的脚本看起来比较长比较多
1.3 选择录制方式的原则
基于浏览器的应用程序推荐使用HTML-based Script
不是基于浏览器的应用程序推荐使用URL-based Script
如果基于浏览器的应用程序中包含了JavaScript并且该脚本向服务器产生了请求,比如DataGrid的分页按钮等,也要使用URL-based方式录制
基于浏览器的应用程序中使用了HTTPS安全协议,使用URL-based方式录制
对于初学者来说,如果HTML方式录制不成功可以换成URL方式录制
1.4 HTML based script设置介绍
用来描述用户行为的脚本。直接创建的URL(web_url)、表单提交(web_submit_form)、链接(web_link)、和图像(web_image)等函数
仅包含明确的URL脚本。这种脚本中,所有的链接、图像请求和URL操作都被录制为web_url函数,而表单提交则被录制为web_submit_data函数
2. 浏览器兼容问题
LoadRunner8.0 最高支持ie6;
LoadRunner8.1 最高支持ie6
LoadRunner9.0 最高支持ie7
LoadRunner9.5 最高支持ie8
LoadRunner11.0 最高支持ie9( win7 32位+LR11+IE10可用,但win7 64位+LR11+IE10不可用,降至IE9可用)
LoadRunner12.0 支持IE11(但没有破解版本)
在实际的录制过程中,发现LoadRunner的兼容性做的是非常不错的,IE、Chrome、FireFox其实都是支持的。在使用不同浏览器时,注意修改以下设置:
IE :
将IE设置为默认浏览器
取消自动填充密码:设置–Internet选项–内容–自动完成(设置)–表单上的用户名和密码
禁用第三方扩展:设置–Internet选项–高级–禁用第三方扩展
取消局域网自动检测:设置–Internet选项–连接–局域网设置–取消自动检测设置
在开始录制脚本之前,将录制的浏览器修改为IE : 选取Web Brower,如下:
当然这样设置之后可能还是有问题(录制脚本为空),个人推荐使用FireFox了。
Chrome:
将Chrome设置为默认浏览器
取消自动检测
在开始录制脚本之前,将录制的浏览器修改为Chrome : 选取 Windows Application,然后再Chrome的安装目录中找到Chrome.exe
当然这样设置之后可能还是有问题(录制脚本为空),个人推荐使用FireFox了。
FireFox:
将FireFox设置为默认浏览器
取消自动填充密码 : 同样在设置中搜索并修改
取消自动检测
在开始录制脚本之前,将录制的浏览器修改为Chrome : 选取 Windows Application,然后再FireFox的安装目录中找到FireFox.exe
在Virtual User Generator中,按F4键,可以弹出如下界面,需要将里面的Brower Emulation修改为你选用的浏览器 :
3. IE/Chrome/Firefox浏览器卡死崩溃问题
如果出现此问题,那么请先检查上述上一节中的步骤是否都已经设置好。此外还可以尝试设置如下,设置完后还不行的同学请执行下面的步骤,记得每执行一步测试一步哦。
ie浏览器在internet选项-高级中去掉启用第三方浏览器扩展前面的钩,把SSL,TLS前面的勾去掉
退出杀毒软件(金山、360等)
退出迅雷软件
计算机——属性——高级系统设置——性能里的设置——数据执行保护——选择“为除下列选定程序之外的所有程序和服务启用”——添加IE浏览器——应用——确定
执行LoadRunner\bin文件夹中的register_vugen.bat批处理文件,重新注册,没有此文件的到网上下载
4. Fiddler解决录制脚本为空
实际应该为
我常使用的浏览器是Chrome+FireFox。
虽然起初在录制的时候选用的是IE11,但是发现IE录制脚本为空,于是尝试了一些方法,但收效甚微。于是转向了FireFox和Chrome。通过查阅资料和博客,发现了一种比较简便的方法,即安装一个Fiddler。
具体的操作方法,就是打开fiddler,然后再用LR12录制。
然后就会发现神奇的现象,原本会弹出卡住的chrome可以正常录制了,录制各种浏览器或客户端生成的脚本也都不为空了。这时fiddler和LR12都会跟踪到数据,fiddler跟到的,LR也会在脚本里生成。
总之,但凡遇到LR12录制的时候各种各样的妖怪问题(客户端或浏览器卡住,录制完成生成不了脚本等),开着fiddler录制,基本都能解决。(至少我遇到的问题都解决了,LR11就算了,严重推荐用12录制)。
如果还是有问题,fiddler都解决不了的话,别怕,我们还有终极大招:fiddler跟踪,保存成SAZ文件后,用LR12 open solution选项打开,然后就会发生令人感动到哭的一幕:LR12自动把fiddler跟踪文件转成了可以调试的脚本。这样的话,脚本问题解决了,就是得自己再去参照下添加事务。
估计是有人反馈过,LR11还不能支持呢,12就可以了。
其实通过编程也是可以实现SAZ转脚本的(SAZ就是个压缩包,里边有一堆的文件),就是可能分析起来麻烦点,不过还好,HP帮我们解决了,这样以后功能有变动的时候,只需要抓取下有变动的请求,转下脚本替换就可以了。
6. LoadRunner Controller集合点策略灰色问题
脚本里已经添加了集合点,但是在Controller里集合点策略是灰色的无法点击
问题解决:将下图的勾选项去掉即可(系统默认是勾选上的)
去掉勾选后可以选择了:
END