尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️
目前,如果說要進行web自動化 測試,首選的工具基本上都是selenium,那麼selenium到底是什麼呢?
1.什麼是selenium
Selenium是基於WEB應用的驗收測試工具集合,直接運行在瀏覽器中,通過一系列命令來模擬用戶操作,Selenium可以將這些命令轉化成實際的HTTP請求在瀏覽器中運行 。
關於Selenium的命名比較有意思,當時QTP mercury是主流的商業自化工具,是化學元素汞(俗稱水銀),而Selenium是開源自動化工具,是化學元素硒,硒可以對抗汞。
2.selenium家族族譜
從2004年至今,selenium經歷了3個版本,即Selenium1.0,Selenium2.0,Selenium3.0
2.1 Selenium1.0
簡單的公式:Selenium 1.0 = Selenium IDE + Selenium Grid + Selenium RC
Selenium IDE:是嵌入到Firefox瀏覽器中的一個插件,做到簡單的瀏覽器操作的錄制與回放功能。
Selenium Grid:selenium分布式
Selenium RC:Selenium1.0的核心,Selenium RC 支持多種不同語言編寫的自動化測試腳本,在瀏覽器中運行Java應用,使用瀏覽器內置的Java 翻譯器來翻譯和執行selenese命令(selenese 是selenium命令集合)。通過Selenium RC的服務器作為代理服務器去訪問應用,從而達到測試的目的。
2.2 Selenium 2.0
Selenium2.0 = Selenium1.0 + WebDriver
Selenium 2.0的核心為WebDriver,WebDriver的工作原理是:
WebDriver是通過原生瀏覽器支持或者瀏覽器擴展來直接控制瀏覽器。WebDriver針對各個瀏覽器而開發,除了Firefox瀏覽器之外,使用其他瀏覽器都需要瀏覽器驅動,與瀏覽器緊密集成,因此支持創建更高級的測試,避免了Java安全模型導致的限制。除了來自瀏覽器廠商的支持之外,WebDriver還利用操作系統級的調用,模擬用戶輸入。
我們在使用WebDriver時,可以看到,是先啟動了瀏覽器driver,通過瀏覽器driver啟動瀏覽器
2.3Selenium 3.0
selenium3.0在2.0的基礎上增加了對win10系統的Edge瀏覽器和Mac系統Safari瀏覽器的支持,並且在啟動Firefox瀏覽器時也必須使用瀏覽器驅動geckodriver.去掉了Selenium RC,因此selenium 3.0的學習核心也是WebDriver.
3. Selenium學習路線—從元素定位開始
需要熟悉webdriver API ,API就是selenium 所定義一方法,用於定位,操作頁面上的各種元素。