通过浏览器配置提高自动化脚本运行稳定性

发表于:2012-9-27 10:16

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:赵厚芳 薛丽    来源:51Testing软件测试网采编

分享:

  弹出窗口提示停止脚本运行

  当自动化脚本运行一定时间后,你可能会遇到浏览器崩溃或者无响应的情况,同时弹出对话框提示 "A script on this page is causing Internet Explorer to run slowly...",正如图 15 所展示,对话框弹出后,页面访问被阻止,页面不再响应脚本的任何请求。

  图 15. 页面无响应

  这是由于页面上某些 ActiveX 控件或者 JS 脚本执行时间过长,超过了注册表中设定的时限导致的。当这种情况出现后,整个自动化运行处于停滞状态,因为无法预知,所以脚本中也没有办法做灵活的处理。但是这种情况下,可以通过修改注册表中 IE 的超时时限来提前预防。修改方法如下:

  1)编辑注册表,找到下列 KEY

  HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Styles(如果 Styles 不存在,则需要手动创建)

  2)在 Style 下创建 DWORD value,名字为 MaxScriptStatements,值为你希望的数值。如果不确定,可以设定成 0xFFFFFFFF。

  什么样的屏幕分辨率适合自动化测试

  屏幕分辨率的问题是个有争议的话题,理论上无论分辨率设置成多少,自动化测试工具都应该可以正确的定位对象,尤其对于可编程的工具而言。实际上,要想达到这个要求,必须有一个前提,就是你的运行环境和你的脚本开发环境的屏幕分辨率必须是一致的,否则即使是可编程的工具在获取对象的相对位置时也容易出现问题,运行极不稳定。

  运行环境能否用远程桌面访问

  为什么我的脚本在很多机器上运行正常,但是每当远程桌面连接的时候就出现问题呢 ?

  我需要访问我的脚本运行环境,是该用远程桌面还是用其他的远程连接工具如 VNC 连接呢?相信这是很多新手经常面临的困惑。

  在实践中我们发现,远程桌面访问运行环境不是完全不允许的,只是在连接过程中会给运行环境带来不稳定因素。首先,使用不同分辨率机器远程桌面连接同一台机器时,远程桌面的屏幕分辨率取决于当前连接所用的机器,而不同屏幕分辨率在运行同一脚本时结果有很大差别,这在前面我们已经提及;其次,断掉远程桌面连接时可能导致机器锁屏,从而使正在运行的脚本因检测不到相应的屏幕对象而受阻失败;

  再则,如果远程机器开启了多用户登录,那么其中一个用户在运行自动化脚本时可能与其他用户的进程发生冲突,从而导致运行失败。

  基于以上种种分析,我们并不建议在自动化脚本的运行环境中开启远程桌面连接,用户可以使用诸如 UltraVNC、TightVNC 等远程连接工具来连接运行环境,以保证自动化脚本的执行不受中断。

  总结

  自动化测试的稳定性和可靠性是一个长期的话题,很多团队都进行过一些探讨。除了技术上的革新和改进,最有效也是最基本的提升自动化测试稳定性的方式便是改善运行环境,扫清自动化运行过程中的障碍,减少人工干预。通过本文,可以清楚的了解浏览器中哪些配置对你的自动化脚本有影响,可以最大限度减轻运行过程中浏览器的负面作用,提高脚本运行的稳定性。笔者希望本文能起到抛砖引玉的作用,使自动化测试开发人员对运行环境有更多的了解和认识,从而提出更多行之有效的提升自动化运行品质的方案。

55/5<12345
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号