Selenium版本介绍
selenium1.0
selenium IDE
1、firefox插件(只支持Firefox)
2、用处
实现简单的自动化
用来提交bug(对于描述比较复杂的bug进行录制成脚本提供给开发回放)
导出脚本 :录制完毕脚本之后--文件
selenium Grid
用来做分布式自动化,详见文档
独立的.jar包
selenium RC(Reomte Control)--核心
用处:
1、远程控制
2、不同语言,不同浏览器去使用
RC :不是一个独立的工具,是被集成在selenium server里面,后面Grid也被集成在里面
不同语言启动selenium的方法--RC原理
java(selenium -java.jar) ---> selenium server(.jar包) ---> Firefox
python(selenium -python.py)-->selenium server --> chrome浏览器
selenium 2.0
历史
Google WebDriver --> 针对chrome浏览器的自动化
2009年,webdriver(稳定性好)与selenium1.0(支持多语言,多浏览器)合并 = selenium 2.0
selenium 1.0 + webdriver = selenium 2.0
RC与webdriver,在2.0放弃RC,因为要向下兼容,所以保留RC
主推的逻辑
由RC转换成webdriver
java(selenium -java.jar) --->集成在.jar包里面的驱动文件 ---> Firefox
python(selenium -python.py)-->chromedriver.exe(遵循webdriver的驱动文件) --> chrome浏览器
python(selenium -python.py)-->IEDriverServer.exe(遵循webdriver的驱动文件) --> IE浏览器
python(selenium -python.py)-->selenium server (遵循webdriver的驱动文件) --> safari浏览器
Web Driver W3C:webdriver的官方文档 https://www.w3.org/TR/webdriver/
由此可见,2.0虽然提高了稳定性,但是还是便乱
selenium 3.0
浏览器驱动规范化:
各自的浏览器维护各自的浏览器
2016年 selenium beta版
java(selenium -java.jar) --->geckodriver.exe ---> Firefox浏览器(比较不稳定)
python(selenium -python.py)-->chromedriver.exe(遵循webdriver的驱动文件) --> chrome浏览器
python(selenium -python.py)-->IEDriverServer.exe(遵循webdriver的驱动文件) --> IE浏览器
python(selenium -python.py)-->驱动直接集成到Mac系统(OS X)(/user/bin/safaridriver)里面 --> safari浏览器
selenium 3.0 = selenium 2.0 - RC