Selenium系列之--01开篇

1、Selenium 工具组件

  1.1 Selenium2,也称为selenium webdriver。webdriver原来是另一个自动化测试工具,后与Selenium 合并了。webdriver直接调用浏览器本身对自动化支持的接口来驱动浏览器的操作。故名思义,它将有不同的driver来驱动不同系统上不同的浏览器。
  1.2 Selenium1,也称为seleniumRC或者Remote Control。就是selenium的原本项目。RC是在浏览器启动后,使用js来驱动浏览器的操作。为什么叫RC呢?因为RC的设计是可以支持控制远程服务器上的selenium server来操作远程端的浏览器。
  1.3 seleniumIDE,以插件的形式安装在firefox,用于录制。
  1.4 selenium-grid,这个是对使用RC进行测试时,需要执行大量用例或分布式执行的时候,提供的框架,就是建立多个服务器的hub与node的关系而已。
  简单说,selenium项目原本的工具是IDE、RC、grid。而webdriver确实功能强大,“他们”讨论讨论,就把它被并入selenium了。

2.Webdriver 详细说明

  Webdriver (Selenium2)是一种用于Web应用程序的自动测试工具,它提供了一套友好的API。Webdriver完全就是一套类库,不依赖于任何测试框架,除了必要的浏览器驱动,不需要启动其他进程或安装其他程序,也不必像Selenium 1那样需要先启动服务。

  Selenium 2针对各个浏览器而开发的,它取代了嵌入到被测Web应用中的 JavaScript。与浏览器的紧密集成,支持创建更高级的测试,避免了JavaScript安全模型的限制。除了来自浏览器厂商的支持,Selenium 2 还利用操作系统级的调用模拟用户输入。WebDriver 支持

  • Firefox (FirefoxDriver) 下载
  • IE(InternetExplorerDriver)下载下载2
  • Opera(OperaDriver)
  • Chrome (ChromeDriver)下载下载2
  • 以及safari(SafariDriver)

它还支持Android(Selendroid)和iPhone(Appium)的移动应用测试。此外,Selenium 2还包括基于HtmlUnit的无界面实现,称为HtmlUnitDriver,RemoteWebDriver的远程访问实现 ,和基于webkit的无界面浏览器phantomjs。Selenium 2 API可以通过

  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

等编程语言访问,支持开发人员使用他们常用的编程语言来创建测试。

3、Selenium工具包

  目前selenium的包已升级到3.x。常用的包如下:
  Selenium Standalone Server 作为远程的服务,运行RC和webdriver。从3.x版本开始,RC不能直接运行,需要通过WebDriverBackedSelenium的接口。
  Selenium client & webdriver :编写RC、webdriver代码需要的包。主要支持:java、c#、ruby、python、js。
  Google chrome driver:支持google chrome的driver。有win、mac、linux版本。
  htmlUnitDriver:不使用具体的浏览器,而是在内存中运行。
  Mozilla GeckoDriver:支持火狐浏览器的driver。有win、mac、linux版本
  更多的包参考
 

目录

Selenium系列之--02 录制脚本并导出

Selenium系列之--03 常见元素操作总结

Selenium系列之--04 不同浏览器获取Xpath的方法

Selenium系列之--05 页面元素找不到的分析思路

Selenium系列之--06 CSS SELECTOR选择器的写法

Selenium系列之--07 操作远程浏览器

Selenium系列之--08 操作已打开的浏览器

Selenium系列之--09 文件上传&文件下载

Selenium系列之--10 测试框架断言【转】

原文地址:https://www.cnblogs.com/liuyitan/p/7194742.html