《Selenium快速上手指南》.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Selenium快速上手指南》.doc

Selenium快速上手指南 tip:以下内容只是个人学习selenium的初步心得的记录,限于个人能力和时间仓促,若有遗漏和错误,请不吝指点(持续更新ing) 目录 Selenium快速上手指南 1 1 预备知识 2 2 相关下载 2 3 运行原理 3 3.1 重要组件 3 3.2 单机测试 4 3.3 多机器测试 4 4 测试程序结构 5 5 基本操作 5 6 其他 6 6.1 Win7下IEDriver在保护模式的问题 6 版本历史 版本号 时间 备注 V1.0 4/16/2014 初稿 V1.01 4/18/2014 补充Firefox下面XPath插件的不足 预备知识 Selenium框架基于Java开发,同时以XPath对页面元素进行定位。要更好的使用该框架要求使用者具备基本Java基础(至少了解其语法包括基本数据类型、条件判断语句、循环语句等,如果对面向对象开发有一定的涉猎的话会更好),同时还需要对XPath有一定的理解,若有正则表达式方面的知识的话则会在今后过程中事半功倍,另外对于某些使用了第三方组件或者复合控件的页面,有可能selenium本身会对这些控件无法进行细节控制,这个时候可以考虑利用selenium去执行js脚本的方法间接来操作,所以懂得一定量的javascript方面知识对于使用该框架可以锦上添花 相关下载 Selenium IDE:/selenium-ide/2.5.0/selenium-ide-2.5.0.xpi 注:这是个firefox插件,具备一定的录制回放功能但对于网页元素识别以及生成测试脚本上存在一定缺陷,建议还是手写代码 Selenium Server:/2.41/selenium-server-standalone-2.41.0.jar 注:该组件的作用其实是建立一个代理,作为测试程序和浏览器交互的一个桥梁 WebDrivers: 包括Firefox,Chrome,IE等 注:该组件是为了解决原有selenium仅靠javascript操控不同浏览器以便进行测试所暴露的弊端,主流浏览器都有相应的定制Driver从而针对不同浏览器进行接口方面的优化 Firefox及其插件 注:由于selenium的IDE是基于Firefox的,因此建议初始写代码使用Firefox,并安装FireBug(辅助调测)和XPath Checker(帮助定位元素,但对于页面嵌套Iframe支持不好)这两个插件。 Maven 注:该组件主要用于对一个工程项目里面所使用到的jar包进行控制管理,同时方便我们进行部署 TestNG 注:该组件扩展selenium让其支持通过配置文件的形式传递测试参数从而方便的调整测试环境和变量进而调整测试内容。 运行原理 要理解Selenium的运行机理,首先要提到几个重要的名词:Selenium Grid,Selenium HubNode, WebDriver,RemoteWebDriver. 重要组件 Selenium Grid:这个组件作用在于帮助使用者进行并行测试,特别是不同版本或不同浏览器或不同机器的时候, 这个组件会根据实际情况将测试运行请求转发到符合要求的测试环境(机器)上并在其之上运行,从而节约测试的时间。该组件集成在Selenium Server里面。如何定位符合要求的测试环境了?那么就得提到下面的Hub和Node两个逻辑概念 Selenium HubNode: 从字面来看,Selenium Hub类似于现实生活中网络设备集线器,其作用也可以类比集线器,作为Hub的机器要求配置了测试环境的机器也就是某Node连接到Hub上并登记其配置信息,然后测试代码可以利用hub来转发相应的测试用例到符合其设定的Node上执行,通信过程对于使用者是透明的,使用者只需要在一台机器上启动Selenium Server并设定其以Hub方式来运行,同时可以在当前机器或另外一台机器上启动Selenium Server并设定其以Node方式运行并连接到Hub那台机器上。 WebDriver:在实际应用中这是一个抽象接口,包含两个逻辑组件Server和Client,其中Server端其始可以认为是一个代理,主要和浏览器打交道;Client则是和我们用不同编程语言编写的测试用例打交道,将测试请求发送到Server端,然后Server端根据实际运行环境来驱动浏览器进行操作并返回结果或状态。主流的浏览器比如IE,Firefox,Chrome等均提供了实现该接口的jar包。 RemoteWebDriver:该组件实现WebDriver接口,它是Selenium进行并行测试的基石,其作用更偏向于上面提到的Client端,它起到一个将测试用例的执行请求提

文档评论(0)

taxe + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档