QUICK TOUR
Selenium is not just one tool or API but it composes many tools.
WEBDRIVER
WebDriver is also known as Selenium 2. If you are beginning with desktop website test automation then you are going to be using WebDriver APIs. WebDriver uses browser automation APIs provided by browser vendors to control browser and run tests. This is as if a real user is operating the browser. Since WebDriver does not require its API to be compiled with application code, it is not intrusive in nature. Hence, you are testing the same application which you push live.
SELENIUM REMOTE CONTROL
Selenium Remote Control is also known as Selenium 1. Selenium RC was the most prominent Selenium tool before the advent of Selenium WebDriver. Selenium RC would use a proxy server and inject JavaScript into a browser to be able to control it. Given the intrusive nature Selenium RC had on a browser, you could never be sure if what you were testing was the same as the application you wanted to push live. Selenium 2 APIs yet contain Selenium RC APIs but Selenium 3 would completely get rid of Selenium RC APIs. If you are still using Selenium RC then you must
migrate to Selenium WebDriver.
SELENIUM IDE
Selenium IDE is a Firefox plugin which can be used to record test steps in Firefox itself. Selenium IDE can be used to generate quick and dirty test code in a variety of programming languages (i.e. C#, Java, Python, and Ruby). Given the maintainability of code generated through Selenium IDE, it is not recommended to use it for anything more than getting acquainted with element locators or generatingthrow away code. We're sure that once you get used to the WebDriver API, you will never use Selenium IDE.
SELENIUM GRID
Soon after development of WebDriver tests, you may face a need of running your tests on multiple browser and operating system combinations. This is where
Selenium Grid comes to the rescue.
SELENIUM HTML RUNNER
This tool allows you to run Test Suites from the command line. Test Suites are HTML exports from Selenium IDE or campatible tools.
Selenium HTML-runner
快速导览
Selenium不仅仅是一种工具或API,它由许多工具构成。
WEBDRIVER(掌握)
WebDriver也就是Selenium 2.如果您从桌面网站测试自动化开始,那么您将使用到WebDriver APIs。WebDriver使用浏览器供应商提供的浏览器自动化APIs来控制浏览器并运行测试。这就好像一个真实用户操作浏览器。由于WebDriver不需要使用应用程序代码编译其API,因此它本质上不具侵入性。因此,您正在测试的应用程序与您推送的应用程序相同。
Selenium 远程控制器(废弃)
Selenium Remote Control也被称为Selenium 1.Selenium RC是Selenium WebDriver出现之前最重要的Selenium工具。Selenium RC将使用代理服务器并将JavaScript注入浏览器以便能够控制它。鉴于Selenium RC在浏览器中的侵入性,您无法确定您测试的内容是否与您希望推送的应用程序相同。Selenium 2 APIs包含Selenium RC API,但Selenium 3将完全摆脱Selenium RC APIs。如果您仍在使用Selenium RC,那么您必须
迁移到Selenium WebDriver。
Selenium IDE
Selenium IDE是一个Firefox插件,可用于记录操作Firefox的测试步骤。Selenium IDE可用于以各种编程语言(即C#,Java,Python和Ruby)生成快速且粗糙的测试代码。鉴于通过Selenium IDE生成的代码的可维护性,建议不要将其用于除了了解元素定位器或生成一次性代码之外的任何事情 。我们确信,一旦您习惯了WebDriver API,您将永远不会使用Selenium IDE。
SELENIUM网格
在WebDriver测试开发后不久,您可能需要在多个浏览器和操作系统组合上运行测试。这是Selenium网格 应对的地方。
SELENIUM HTML RUNNER
- [译] MongoDB Java异步驱动快速指南
导读 mongodb-java-driver是mongodb的Java驱动项目. 本文是对MongoDB-java-driver官方文档 MongoDB Async Driver Quick Tour ...
- 转:C++ Boost/tr1 Regex(正则表达式)快速指南
C++ Boost/tr1 Regex(正则表达式)快速指南 正则表达式自Boost 1.18推出,目前已经成为C++11(tr1)的标准部分. 本文以Boost 1.39正则表达式为基础,应该广泛适 ...
- (译)快速指南:用UIViewPropertyAnimator做动画
翻译自:QUICK GUIDE: ANIMATIONS WITH UIVIEWPROPERTYANIMATOR 译者:Haley_Wong iOS 10 带来了一大票有意思的新特性,像 UIViewP ...
- JUnit5 快速指南
JUnit5 快速指南 version: junit5 1. 安装 2. JUnit 注解 3. 编写单元测试 3.1. 基本的单元测试类和方法 3.2. 定制测试类和方法的显示名称 3.3. 断言( ...
- 【SFA官方翻译】使用 Kubernetes、Spring Boot 2.0 和 Docker 的微服务快速指南
[SFA官方翻译]使用 Kubernetes.Spring Boot 2.0 和 Docker 的微服务快速指南 原创: Darren Luo SpringForAll社区 今天 原文链接:https ...
- Emacs 快速指南(中文翻译)
Emacs 快速指南 目录 1. 小结(SUMMARY) 2. 基本的光标控制(BASIC CURSOR CONTROL) 3. 如果 EMACS 失去响应(IF EMACS STOPS RESP ...
- 29 A Quick Guide to Go's Assembler 快速指南汇编程序:使用go语言的汇编器简介
A Quick Guide to Go's Assembler 快速指南汇编程序:使用go语言的汇编器简介 A Quick Guide to Go's Assembler Constants Symb ...
- Emacs 快速指南 - 原生中文手册
Emacs 快速指南 -折叠目录 1. 小结(SUMMARY) 2. 基本的光标控制(BASIC CURSOR CONTROL) 3. 如果 EMACS 失去响应(IF EMACS STOPS RES ...
- Docker网络基础:快速指南
Docker网络基础:快速指南 原文连接:http://blogxinxiucan.sh1.newtouch.com/2017/07/30/Docker网络基础:快速指南/ 了解有关扩展网络功能的默认 ...
- 从 C++ 到 Objective-C 的快速指南
简介 当我开始为iOS写代码的时候,我意识到,作为一个C++开发者,我必须花费更多的时间来弄清楚Objective-C中怪异的东西.这就是一个帮助C++专家的快速指南,能够使他们快速的掌握Apple的 ...
随机推荐
- MYSQL架构理解
目录 一.MYSQL架构 1. 架构图 2.分层实现 3.查询组件 二.并发控制 三. 事务 四.引擎 摘自 通过对MYSQL重要的几个属性的理解,建立一个基本的MYSQL的知识框架 一.MYSQL架 ...
- gradle学习(一)
projects和tasks 任何一个Gradle构建都是由一个或者多个project组成 每个project都有多个tasks构成 每个task都代表了构建执行过程中的一个原子性操作.例如 编译 打 ...
- doT.js模板用法
前提:引入doT.min.js: <script type="text/javascript" src="js/jquery.js"></sc ...
- 方法覆盖 和toString方法的作用
当我们代码怎么编写的时候,在代码级别上构成了方法的覆盖呢? 两个类必须要有继承关系. 重写之后的方法和之前的方法具有:相同的返回值类型 相同的方法名 相同的形参列表 访问权限不能更高,只能更低 重写之 ...
- 学习笔记--我的第一个Java程序
我的第一个Java程序 // pubilc 表示公开的 // class 表示定义一个类 // HelloWorld 表示一个类名 public class HelloWorld { // 表示定义一 ...
- Android一句话 | View事件分发
View中,无论是down,move,还是up,事件都是这样传递的:由dispatchTouchEvent到onTouch,再到onTouchEvent,click是在onTouchEvent中的. ...
- 巧用 CSS 实现动态线条 Loading 动画
有群友问我,使用 CSS 如何实现如下 Loading 效果: 这是一个非常有意思的问题. 我们知道,使用 CSS,我们可以非常轻松的实现这样一个动画效果: <div></div&g ...
- centos6.6手动安装mysql5.5并配置主从同步
0.实验环境 主机IP(Master) 192.168.61.150 centos6.6 从机IP(Slave) 192.168.61.157 centos6.6 1.查看centos系统版本 [ ...
- es基础知识
1.ES定义 •是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储.检索数据:本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据 •使用Java开发并使用Lucene作为其核心来实现 ...
- 🏆【Alibaba中间件技术系列】「RocketMQ技术专题」系统服务底层原理以及高性能存储设计分析
设计背景 消息中间件的本身定义来考虑,应该尽量减少对于外部第三方中间件的依赖.一般来说依赖的外部系统越多,也会使得本身的设计越复杂,采用文件系统作为消息存储的方式. RocketMQ存储机制 消息中间 ...