- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Selenium入门
PAGE \* MERGEFORMAT26
selenium入门
1 selenium简介
selenium是一款基于web应用程序的开源测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。它支持Firefox、ie、Mozilla等众多浏览器。它同时直至JAVA、C#、Ruby、Python、PHP、Perl等众多的主流语言。
Selenium名字的来历:在Selenium出现之前,当时最著名的web应用功能测试工具Mercury Quanlity Center,但那是一个商业工具,功能强大却也价格不菲,常常让开发者们又爱又恨。所以,自己动手开发开源功能测试工具的ThoughtWorker们把这个工具叫做Selenium——“mercury”有“水银”的意思,而“selenium”(硒元素)恰好是专解汞中毒的特效药。
Selenium是运行在浏览器中,selenium IDE能够提供录制功能。Selenium具有开源性、跨平台性简单灵活、以及支持众多的编程语言支持的特点,你可以用html编写测试用例,也可以用python、java、php甚至Linux shell来编写测试用例。如此多的特性,使Selenium最近几年成为越来越多QA的Web应用功能测试的首选自动化测试工具。
2 selenium的组成
Selenium的框架与原理:selenium 是web自动化测试工具集,包括IDE、Grid、RC、WebDriver等。Selenium IDE 是firefox浏览器的一个插件。提供简单的脚本录制、编辑与回放功能。Selenium Grid 是用来对测试脚步做分布式处理,现在已经集成到selenium server 中了。RC和WebDriver 更多应该把它看成一套规范,在这套规范里定义客户端脚步与浏览器交互的协议,以及元素定位与操作的接口。
2.1 selenium1.0
Selenium 1.0使用的是Javascript注入技术与浏览器打交道,需要SeleniumRC启动一个Server,将操作Web元素的API调用转化为一段段Javascript,在Selenium内核启动浏览器之后注入这段Javascript。开发过Web应用的人都知道,Javascript可以获取并调用页面的任何元素,自如的进行操作。由此才实现了Selenium的目的:自动化Web操作。这种Javascript注入技术的缺点是速度不理想,而且稳定性大大依赖于Selenium内核对API翻译成的Javascript质量高低。
图17-1 selenium1.0 体系结构
2.2 selenium2.0
Selenium 2.0 则是把selenium 1.0中selenium RC替换为了WebDriver。
图17-2 selenium1.0 体系结构
2.3 selenium IDE
Selenium IDE是一个火狐插件,可以在火狐中录制,回放脚本,也可以将录制好的测试脚本格式化成其他语言,例如java,python,c#,ruby。除此之外selenium在google code上还有很多其他语言的支持,例如javascript,vb等。
Selenium IDE只是一个小工具,对于一些较复杂的页面,Selenium IDE就不能做到完美的录制、回放。它最大的用处就是帮助新手学习selenium脚本的写法,同时熟悉selenium的API。
Selenium IDE特点:
1.非常容易在页面上进行录制和回放
2.能自动通过id,name和xpath来定位页面上的元素。
3.自动执行selenium的命令。
4.能够进行调试和设置断点。
5.录制生成的脚本能够转化成各种语言
6.在每个录制的脚本中能够加入断言
2.4 selenium Grid
Selenium Grid是一种自动化的测试辅助工具,Grid通过利用现有的计算机基础设施,能加快Web-app的功能测试。利用Grid,可以很方便地同时在多台机器上和异构环境中并行运行多个测试事例。
Selenium Grid基于Web-app测试工具Selenium,它可以让您同时并行运行多个Selenium Remote Control。比较好的一点是,它使所有这些Selenium Remote Control显示为一个,这样您在测试中就可以不必操作具体的计算机。
Selenium Grid因为是基于Selenium RC的,所以它同时支持RC的其它所有语言,如:Ruby、 Java、 Python
文档评论(0)