第一 环境的准备
·LR11 现在支持的版本有
➤ Microsoft Internet Explorer 6.0 SP1 or SP2
➤ Microsoft Internet Explorer 7.0
➤ Microsoft Internet Explorer 8.0
➤ FireFox 6~8
➤ Opera7~11
如果浏览器是IE9 就需要LR11安装补丁包升级到LR11.2还是LR11.5。
LR11破解写入新的licence的时候,打开LR要以管理员权限打开,否则licence写入失败。
另外.iso是光驱文件,必须用读光驱的软件UltraISO将光驱文件加载的电脑上,这样才能使用。
·浏览器降级
如果本地浏览器的版本较高,比如现在的是IE11,那么你就得为了做性能测试而降级浏览器的版本。一般win7内置的浏览器版本是IE8,如果是升级升上来的只需要降回去就可以了。
降级的方法在控制面板→程序→程序和功能→已安装更新 将IE更新程序卸载,电脑重启就可以降级了。
·关闭防火墙、杀毒软件
有时候没有录制到任何的事件,那么代表浏览器兼容性不好。
可以试试下面的方法:
1、卸载360杀毒、安全卫士、关闭防火墙等系列软件;
2、IE浏览器Internet选项窗口中‘高级’选项卡中,‘重置’浏览器;同时设置中”禁用第三方浏览器扩展“;
3、“我的电脑”点右键->属性->高级点选“性能”中的“设置” 打开对话框后,进入“数据执行保护”,如果空白框中没有“Internet Export”,请点击“添加”,选择c:/program files/internet iexplore/iexplore.exe 点击“添加”钮->将LR安装目录bin下的vugen.exe添加进去,这2个都添加进去。
·监控工具
PC端安装spotlight 用来监控Linux服务器。 spotlight的安装文件以及配置在网上很容易找到。
第二 测试场景设计
举一个简单的例子: 仅仅测试多用户并发访问网站,服务器响应的压力。这时候这个测试目的相对的简单多了
设计场景一:
模拟单个用户运行脚本,查看服务器响应时间以及系统资源使用情况 。
注:理论上运行当个脚本的时间是最快时间。并发负载时的时间小于单个脚本运行的时间。如果出现并发测试的时间比单个用户运行的时间还要小,那就是有问题的。
测试最大并发用户:首先测试出系统支持的最大并发量。这个最大并发量要多次测试,根据服务器响应时间来确定最大并发量。
如当系统并发80个用户的时候服务器响应时间已经到达了3s,这时候如果再增加并发用户的话,系统响应时候就太长了,达不到指定的性能目标。那么最大并发用户就只能是80。
设计场景二:
在最大并发用户下,运行单次,查看服务器响应时间以及系统资源使用情况
设计场景三:
根据80、20原则确认出高峰使时该系统的用户数。比如用户数有2k,根据刚才的2/8原则,高峰时的人就有1.6k,并发最大是80,那么迭代20次才能模拟1.6K次的访问。 查看服务器响应时间以及系统资源使用情况
设计场景四:
根据实际场景不会有1.6K用户同时在线的。因此设计一个模拟实际场景的方案:每5个用户访问主页面,然后上述每用户每隔3秒再次重新访问一次,共重复访问20次,上述过程再每隔15秒调用一次,共计调用16次;即5用户20次16次=1600次访问主页面;上述过程模拟了1600次主页面访问,访问方式是由低访问量到高访问量的过程,比较接近实际业务场景;
第三 录制脚本
录制原始脚本
准备好环境之后就可以准备录制脚本了。录制单个用户访问网站的脚本比较简单,只要页面顺利加载出来就代表录制的这个脚本是完整的。这就是我们录制的原始脚本。
修改脚本
添加增加事务,增加检测点,集合点,思考时间,增加关联等
为什么要增加事务?
增加事务后,最后进行结果分析时,或者脚本回放的时候,我们就可以看到哪些事务花费了哪些时间。
为什么要添加检查点?
多用户并发情况下,如何判断所有用户都访问到了测试网站呢?判断的依据是什么?这时就需要寻找一个页面检查点。检查点的作用是检查用户是否真正成功打开了页面。
添加检查点的时候有什么注意的呢?
一个页面有时候是有多个页面html元素组成的,可能heade头部显示信息加载出来了,body部分还没有加载出来,选取测试检查点的时候我们要检查页面最后加载的脚本元素。这样可以保证页面全部加载完成,能准确的反应服务器响应时间。
集合点什么时候需要添加?
集合点是对于多个场景运行时,要求用户并发操作的时候才加上的,但是如果实现理论上的并发,加上集合点时产生的时间与不加集合点产生的时候相差就很大。
录制过程中遇到的问题如何解决?
问题1.添加中文检查点的时候,如果不识别中文,或者将中文识别为乱码。
解决方法:设置录制选项里面的支持UTF-8,就可以了。
问题2:Error-27780: [GENERAL_MSG_CAT_SSL_ERROR]connect to host 尤其是https方式访问的时候,需要证书认证
解决方法: 在vugen 内, run-time settings->preferences->勾上WININET replay instead of Sockets。
winInet replay 支持集成如IE的所有特征。回放时,底层的winInet函数完成SSL握手过程。