基本介紹
- 外文名:Selenium
- 別名:瀏覽器自動化測試框架
- 作用:Web應用程式的自動化測試工具
- 支持瀏覽器:IE、Mozilla Firefox、Chrome、Edge等
- 開源協定:Apache-2.0
功能,優勢,發展歷史,組件,使用,
功能
- 框架底層使用JavaScript模擬真實用戶對瀏覽器進行操作。測試腳本執行時,瀏覽器自動按照腳本代碼做出點擊,輸入,打開,驗證等操作,就像真實用戶所做的一樣,從終端用戶的角度測試應用程式。
- 使瀏覽器兼容性測試自動化成為可能,儘管在不同的瀏覽器上依然有細微的差別。
- 使用簡單,可使用Java,Python等多種語言編寫用例腳本。
優勢
據Selenium主頁所說,與其他測試工具相比,使用Selenium的最大好處是:
Selenium測試直接在瀏覽器中運行,就像真實用戶所做的一樣。Selenium測試可以在Windows、Linux和Macintosh上的Internet Explorer、Chrome和Firefox中運行。其他測試工具都不能覆蓋如此多的平台。使用Selenium和在瀏覽器中運行測試還有很多其他好處。
Selenium完全開源,對商業用戶也沒有任何限制,支持分散式,擁有成熟的社區與學習文檔
下面是主要的幾大好處:
通過編寫模仿用戶操作的Selenium測試腳本,可以從終端用戶的角度來測試應用程式。通過在不同瀏覽器中運行測試,更容易發現瀏覽器的不兼容性。Selenium的核心,也稱browser bot,是用JavaScript編寫的。這使得測試腳本可以在受支持的瀏覽器中運行。browser bot負責執行從測試腳本接收到的命令,測試腳本要么是用HTML的表布局編寫的,要么是使用一種受支持的程式語言編寫的。
Selenium 2.0適用於以下瀏覽器:
- Google Chrome
- Internet Explorer 7, 8, 9, 10, 11
- Firefox
- Safari
- Opera
- Edge
- HtmlUnit
- phantomjs
Selenium 1.0適用於以下瀏覽器:
Browser | Selenium IDE | Selenium Remote Control | Selenium Core | Selenium 2/Webdriver API |
---|---|---|---|---|
Firefox 10 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 9 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 8 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 7 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 6 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 5 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 4 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 3.6 | Record and playback tests | Start browser, run tests | Run tests | Run tests |
Firefox 3 | Record and playback tests | Start browser, run tests | Run tests | not supported |
IE 9 | not supported | Start browser, run tests | Run tests | Run tests |
IE 8 | not supported | Start browser, run tests | Run tests | Run tests |
IE 7 | not supported | Start browser, run tests | Run tests | Run tests |
Safari 3 | not supported | Start browser, run tests | Run tests | not supported |
Safari 2 | not supported | Start browser, run tests | Run tests | not supported |
Opera 9 | not supported | Start browser, run tests | Run tests | Run tests |
Opera 8 | not supported | Start browser, run tests | Run tests | Run tests |
Chrome | not supported | Start browser, run tests*** | Run tests*** | Run tests*** |
Others | not supported | Partial support possible* | Run tests** | not supported |
發展歷史
2004年,Thoughtworks的員工Jason Huggins編寫了一個名為JavaScriptTestRunner的測試工具,並於當年向多位同事展示,該工具進一步進化為一個可以復用的測試框架並開源。
Jason Huggins 2007年從Thoughtworks離職並加入Selenium support團隊,同年Google多名員工加入開發,並在GTAC會議上介紹了Selenium在Google的使用情況。
Selenium是一個成功的開源軟體,其發展獲得很多公司和獨立開發者的支持。
組件
- Selenium IDE:一個Firefox外掛程式,可以錄製用戶的基本操作,生成測試用例。隨後可以運行這些測試用例在瀏覽器里回放,可將測試用例轉換為其他語言的自動化腳本。
- Selenium Remote Control (RC) :支持多種平台(Windows,Linux,Solaris)和多種瀏覽器(IE,Firefox,Opera,Safari),可以用多種語言(Java,Ruby,Python,Perl,PHP,C#)編寫測試用例。
- Selenium Grid :允許Selenium-RC針對規模龐大的測試案例集或者需要在不同環境中運行的測試案例集進行擴展。
使用
能把Selenium RC腳本和JUnit單元測試結合起來,既能涵蓋功能測試,又能涵蓋數據或後台Java類測試,從而構成一個完整的Web套用測試解決方案。
首先安裝JRE,從官網(文後參考資料)下載Selenium RC的程式Jar包,存放在硬碟的某個目錄中,如E:/Selenium/。
啟動Selenium RC服務,啟動cmd模式,進入到selenium RC所在的目錄後,輸入: java -jar selenium-server.jar 。啟動完成後,可以看到以下信息,即表示啟動成功。
