Selenium 是个强大的工具集,其功能是用于测试 Web 应用程序。本身提供了丰富的测试函数集,支持多种浏览器、多编程语言、多平台,是一款开源免费的测试工具。
-
支持平台
Selenium 本身支持在多平台让运行如:Windows,Linux,Mac
-
支持浏览器
Webdriver 目前支持的浏览器有:Firefox,Chrome,IE,Safari,Opera,Edge 等等
-
支持语言
Selenium 在官方支持的语言有:Java,Python,C#,Ruby 等等
Selenium的起源:
2004年,ThoughtWorks 的员工 Jason Huggins 为了不让自己的时间浪费在无聊,重复的工作中;他和他的团队采用了 JavaScript 编写了一个能够驱动浏览器页面的行为的 JavaScript 类库,这就是 selenium core,同时也是 seleniumRC、selenium IDE 的核心组件。 Selenium 由此诞生。
关于 Selenium 的命名比较有意思,当时的主流商业自动化测试工具是 QTP mercury ,mercury是汞,俗称水银的意思,而 selenium 是开源自动化工具,是化学元素硒 ,硒可以和汞对抗。
1. 从2004年到现在,Selenium 已经发展到了 selenium3.0
2. Selenium 1.0
Selenium 1.0 = Selenium IDE + Selenium Grid + Selenium RC
Selenium IDE
Selenium IDE是一个嵌入到 Firefox 浏览器的插件,可以实现简单的浏览器的操作录制和回放功能
Selenium Grid
Selenium Grid 是一种自动化测试的辅助工具,支持分布式测试用例执行(运用在不同的系统、浏览器上运行同一份脚本)
Selenium RC
Selenium RC(Remote Control)是 Selenium 家族的核心部分。Selenium RC 支持多种不同语言编写的自动化测试脚本,通过 Selenium RC 的服务器作为代理服务器去访问应用,从而达到测试的目的。
Selenium RC = Client Libraries + Selenium Sever
3. Selenium 2.0
Selenium 2.0又名 Webdriver,selenium 和 webdriver 本来是竞争对手,两个项目合并后发布于2011年 Selenium2.0 即继承了 webdriver 的优点(脚本直接控制浏览器,模拟用户操作)和 selenium 支持广泛的浏览器
Selenium 2.0 = Selenium 1.0 + WebDriver
Selenium 工作原理
4. Selenium3.0
Selenium3.0做了许多更新:
(1)去掉了 Selenium RC,Selenium 3.0 = Selenium2.0 - SeleniumRC
(2)只支持Java 8.0及以上的Java版本
(3)Selenium 的 FireFox 驱动独立了,之前在2.0版本时下载 Selenium 就可以直接驱动FireFox浏览器 (selenium2 对 Firefox 的支持最高只支持46及以下版本。selenium3 可以支持47以上版本)
更新至 Selenium 3.0以后要和 Chrome 一 样,必须另外下载驱动
(4)MAC OS 集成 Safari 的浏览器驱动。默认在 /usr/bin/safaridriver 目录下
(5)只支持IE 9.0版本以上
(6)Selenium 3.0 只支持Java 8 版本以上
"记录"是见证成长;"成长"则意味着蜕变;“变",创造无限可能。