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