利用Selenium自动化web测试

利用Selenium自动化web测试

ID:42596490

大小:203.79 KB

页数:17页

时间:2019-09-18

利用Selenium自动化web测试_第1页
利用Selenium自动化web测试_第2页
利用Selenium自动化web测试_第3页
利用Selenium自动化web测试_第4页
利用Selenium自动化web测试_第5页
资源描述:

《利用Selenium自动化web测试》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、简介:Selenium是一个没有正式指导手册的开源项目,这让测试人员的问题调查很费时间。本文为基于Selenium1.0(发布于2009年6月)的测试期间的常见问题提供最佳实践。简介Selenium是一个健壮的工具集合,跨很多平台支持针对基于web的应用程序的测试自动化的敏捷开发。它是一个开源的、轻量级的自动化工具,很容易集成到各种项目中,支持多种编程语言,比如.NET、Perl、Python、Ruby和Java?编程语言。利用Selenium测试Ajax应用程序AsynchronousJavaScriptandXML(Ajax)是一种用于创

2、建交互式web应用程序的web开发技术。Ajax应用程序的一个特征是,不会导致一次重新加载整个页面。相反,浏览器将具有一个对服务器的异步调用以获得数据,并且只刷新当前页面的特定部分。要提高web页面的交互性、响应速度和可用性,测试Ajax应用程序的过程需要一些改变。我们首先刷新web页面,然后就是等待,直到异步调用完成。完成之后,可以继续进行验证。此时,出现适当等待时间的问题。一种选择是在测试应用程序中简单地暂停一段固定的时间,这在大多数情况下都是可行的。在有些情况下,比如说网络吞吐量很慢时,Ajax调用在暂停一段特定的时间之后没有完成,会导

3、致测试用例失败。另一方面,如果暂停时间太长,会使得测试慢得不可接受。Selenium提供了更为高效的处理等待的方式。一种可能做法是,使用类com.thoughtworks.selenium.Wait来等待一个元素或文本在页面上出现或消失。可以在until()函数中定义等待的退出条件,或者扩展Wait类来实现等待退出。清单1是使用Wait类的样例代码。它将在条件满足时停止等待,或者在超出最大等待时间时返回一个超时异常。清单1.等待元素或文本出现Waitwait=newWait(){    publicbooleanuntil(){       

4、 returnselenium.isElementPresent(locator);        //orselenium.isTextPresent(pattern);    }};wait.wait("",timeoutInMilliseconds);另一种选择是使用Selenium中的waitForCondition函数,一个JavaScript代码片段将被作为参数传递给该函数。一旦Selenium检测到条件返回为真,它将停止等待。您可以等待一些元素或文本出现或者不出现。JavaScript可以运行在由Selenium.browser

5、.getCurrentWindow()函数弹出的应用程序窗口中。清单2是检查窗口状态的样例代码。它只工作在Firefox中。清单2.等待窗口就绪的状态Stringscript="varmy_window=selenium.browserbot.getCurrentWindow();"script+="varbool;";script+="varreadyState=(my_window.document.readyState);";script+="if(readyState=='complete'){";script+="bool='tru

6、e';";script+="}";script+="bool;";selenium.waitForCondition(script,timeoutInMilliseconds);如何支持dojo应用程序Dojo是一个常用的JavaScript工具包,用于构造动态web界面。使用Selenium测试Dojo应用程序时的一个关键点是认识Dojo小部件和记录它们的操作。作者定义的Dojo小部件处于抽象级别。页面运行时,会将Dojo小部件转换成基本的HTML代码。存在很多由Dojo自动生成的HTML代码,因此,Dojo小部件的认识可能与传统HTML小

7、部件有些不同。Dojo小部件上执行的操作(包括文本字段、按钮复选框和单选按钮)可能与HTML小部件相同。但是,Dojo在组合框上提供的日期选择器和其他额外的小部件可能需要特定的处理。图1.Dojo组合框使用SeleniumIDE来记录图1中提供的组合框上选中的操作。单击向下箭头,会出现一个下拉列表。选中第三项Stack(SWG)。记录的脚本提供在图2中。图2.SeleniumIDE记录的脚本有时,只会由IDE生成第二行脚本。在这种情况下,添加单击箭头按钮的操作。对于上面的脚本,如果第一行被重新播放,那么它应该生成下拉列表。但是它不执行任何操作

8、。对于多个Dojo小部件,单击并不真正执行单击操作。将click(locator)更改为clickAt(locator,coordString)或者MouseDow

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。