源码干货

web自动化测试神器——selenium家族介绍

2019-01-07  本文已影响7人  源码时代官方

目前,如果说要进行web自动化 测试,首选的工具基本上都是selenium,那么selenium到底是什么呢?

1.什么是selenium

Selenium是基于WEB应用的验收测试工具集合,直接运行在浏览器中,通过一系列命令来模拟用户操作,Selenium可以将这些命令转化成实际的HTTP请求在浏览器中运行 。

关于Selenium的命名比较有意思,当时QTP mercury是主流的商业自化工具,是化学元素汞(俗称水银),而Selenium是开源自动化工具,是化学元素硒,硒可以对抗汞。

2.selenium家族族谱

从2004年至今,selenium经历了3个版本,即Selenium1.0,Selenium2.0,Selenium3.0

2.1 Selenium1.0

image

简单的公式:Selenium 1.0 = Selenium IDE + Selenium Grid + Selenium RC

Selenium IDE:是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能。

Selenium Grid:selenium分布式

Selenium RC:Selenium1.0的核心,Selenium RC 支持多种不同语言编写的自动化测试脚本,在浏览器中运行JavaScript应用,使用浏览器内置的JavaScript 翻译器来翻译和执行selenese命令(selenese 是selenium命令集合)。通过Selenium RC的服务器作为代理服务器去访问应用,从而达到测试的目的。

2.2 Selenium 2.0

Selenium2.0 = Selenium1.0 + WebDriver

Selenium 2.0的核心为WebDriver,WebDriver的工作原理是:

image

WebDriver是通过原生浏览器支持或者浏览器扩展来直接控制浏览器。WebDriver针对各个浏览器而开发,除了Firefox浏览器之外,使用其他浏览器都需要浏览器驱动,与浏览器紧密集成,因此支持创建更高级的测试,避免了JavaScript安全模型导致的限制。除了来自浏览器厂商的支持之外,WebDriver还利用操作系统级的调用,模拟用户输入。

我们在使用WebDriver时,可以看到,是先启动了浏览器driver,通过浏览器driver启动浏览器

image image

2.3Selenium 3.0

selenium3.0在2.0的基础上增加了对win10系统的Edge浏览器和Mac系统Safari浏览器的支持,并且在启动Firefox浏览器时也必须使用浏览器驱动geckodriver.去掉了Selenium RC,因此selenium 3.0的学习核心也是WebDriver.

3. Selenium学习路线---从元素定位开始

需要熟悉webdriver API ,API就是selenium 所定义一方法,用于定位,操作页面上的各种元素。

上一篇下一篇

猜你喜欢

热点阅读