Selenium 是目前用的最普遍的Web UI 自動化測試框架。 本系列文章,將深刻簡出來說解selenium 的用法linux
文章的末尾處, 有整個系列的連接編程
閱讀目錄windows
selenium 的意思是 硒 (有點QTP 殺手的意思)瀏覽器
QTP mercury 是水銀 硒能夠對抗水銀安全
QTP 目前的價格是 三個單機版 十萬人民幣左右, 愈來愈少的人用QTP了併發
一套軟件工具,用來支持不一樣的自動化測試方法框架
開源軟件:能夠根據須要來增長重構工具的某些功能編程語言
跨平臺:linux , windows mac工具
核心功能就是能夠在多個瀏覽器上進行自動化測試學習
支持多種編程語言
目前已經被google , 百度, 騰訊等公司普遍使用
可以實現相似商業工具的大部分功能,而且還實現了商業工具不能支持的功能
建議你們總體學習整套工具, 未來好選擇適合本身測試目的的測試工具。
2004年在ThoughtWorks 公司, 一個叫作Jason Huggins爲了減小手工測試的工做, 本身寫了一套Javascript的庫, 這套庫能夠進行頁面交互, 而且能夠重複的在不一樣瀏覽器上進行重複的測試操做。
這套庫後來變爲了Selenium Core. 爲Selenium Remote Control (RC) 和Selenium IDE 提供了堅實的核心基礎能力
Selenium 的做用是劃時代的,由於他容許你使用多種語言來控制瀏覽器。
瀏覽器的對JS的安全限制也對Selenium的發展帶來了困擾,而且Web程序也愈來愈大,特性也愈來愈多,都對selenium的發展來講帶來了很多困難
2006年Google 的工程師Simon Stewart開啓了一個叫作WebDriver的項目, 此項目能夠直接讓測試工具使用瀏覽器和操做系統自己提供的方法, 藉此來繞過JS環境的沙盒效應, WebDriver項目目標就是爲了解決Selenium的痛處
2008年北京奧運年會, Selenium 和 WebDriver 這兩個項目進行了合併, Selenium 2.0 出現了,也就是你們說的WebDriver
selenium 2 (aka. Selenium Webdriver)提供了極佳的測試工具特性, 例如:關聯的面向對象API
Selenium 1 (aka. Selenium RC or Remote Control) 支持更多的瀏覽器,支持更多的編程語言(Java, JavaScript, Ruby PHP)
Selenium IDE (集成開發環境) 是Firefox 的插件, 有圖形界面來錄製和回放腳本。 此插件只是用來作原型工具,不用但願你使用這個工具來運行全部的測試腳本
Selenium-grid 能夠並行的在多個測試環境之下測試腳本,實現腳本的併發測試執行。 縮短大量測試腳本集合的執行時間
若是沒有編程經驗,建議選擇Selenium IDE 來熟悉Selenium 的命令。 使用IDE以快速來建立簡單的測試腳本
咱們不建議你選擇Selenium IDE 來執行自動化測試,
建議先熟悉: Selenium IDE
再進一步熟練使用Selenium-WebDriver API
IE6-10
FireFox大部分版本
Chrome
Safari
Opera
Andrioid 系統上的自帶瀏覽器
IOS系統上自帶瀏覽器
HtmlUnit的無界面實現
WebDriver 是Selenium 1 的升級版本, 也能夠理解爲兩個不一樣的產品
WebDriver 相比Selenium 1 來講能夠更好地繞過JS的限制,API也更易於使用.
Selenium 1 比WebDriver 支持更多的瀏覽器
WebDriver 能夠實現向下兼容Selenium 1 的腳本