iT邦幫忙

3

鼠年全馬鐵人挑戰 WEEK 06:Selenium 自動化測試工具


                Photo on selenium

在這篇文章還沒開始之前,小弟先附上 Selenium 官方網站的傳送門。
有興趣或是覺得小弟說得不清楚的,可以再來這邊看看~
( ~'ω')~ <<< Selenium 官方網站 >>> ~('ω'~ )


前言

Selenium 對系統軟體的測試人員來說可真的是一大福音啊。原因是因為當一個系統軟體過於龐大且複雜的時候,所有系統軟體測試都需要透過測試人員手動驗證,而這將會照成了一個問題是,當測試人員不同或者是測試步驟有錯誤或是遺漏,都會間接甚至是直接導致測試的驗證內容不一致或是錯誤。但是透過 Selenium 的自動化框架就就可以輕鬆達到自動化測試,這麼一來,不但可以節省測試人員手動驗證的時間,也可以大大提升測試內容的一致性與準確度。而此篇內容將會簡單的介紹一下 Selenium,而會在後續幾篇文章中將會陸續介紹到 Selenium IDE、Selenium WebDriver 和 Selenium Grid。


初步認識 Selenium

Selenium 是一套用於自動化 Web 瀏覽器的工具。
這個是 Selenium open source 的連結: Github - SeleniumHQ/selenium

Selenium 自動化測試框架,是許多網頁測試工具的核心,讓測試的程式腳本可以直接驅動瀏覽器進行各種操作,就像是真的使用者在操作網站一樣,包括:打開瀏覽器、點擊按或連結、輸入文字、取得網頁內容或內容比對驗證等,可以滿足許多測試的需求。

Selenium 適合使用在敏捷開發上,因為能夠快速發現問題並進行問題回報,減少了手動找問題的時間,也能夠頻繁的執行回歸測試 (Regression testing),並自製測試報告。

  • Selenium 支持的作業系統

    Microsoft Windows
    macOS
    Linux

  • Selenium 支持的瀏覽器

    Microsoft Edge
    Google Chrome
    Internet Explorer 11
    Mozilla Firefox
    Opera
    Safari

  • Selenium 支持的程式語言

    Java
    Python
    C#
    Ruby
    JavaScript
    Kotlin

  • Selenium 目前有三個主要的專案

                   Photo on selenium

  • Selenium 的錯誤回報
    在使用 Selenium 遇到任何問題,都可以隨時在 Selenium 的 Bug Tracker 上回報。
    或想在未來版本中擁有什麼樣的新功能,也可以在 Selenium 的 Bug Tracker 上提。
    Selenium 的 Bug Tracker 連結


初步動作 Selenium

簡單測試 Selenium

  1. 首先,先建立出一個自己的測試資料夾,並且進入該層資料夾。

    $ mkdir selenium    # 新增資料夾
    $ cd selenium       # 進入該資料夾
    
  2. 以下範例,小弟是透過 python 來完成。
    所以接下來要確認的是,有沒有安裝 python。
    可以透過 $ python -V 指令來確認是否已安裝。
    如果沒有安裝 python 的話可以使用 python websitepipenv

  3. 安裝 selenium $ pip install selenium
    如果下完指令回傳 $ command not found: pip 的錯誤訊息,
    就執行一下 $ sudo easy_install pip 安裝 pip。

  4. 根據上述"初步動作 Selenium",安裝所需的瀏覽器驅動程式
    下載完之後的 WebDriver 檔案記得要移到 /usr/local/bin。
    $ sudo mv chromedriver /usr/local/bin
    移完之後可以確認一下,防火牆有沒有擋下來。
    系統偏好設定 > 安全性與隱私權 > 強制允許。

  5. 新增簡單測試的 python 腳本檔案。
    取什麼名字都可以,但是不能取 selenium.py 會與函式庫的名稱重複。

    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get('https://ithelp.ithome.com.tw/users/20124633/articles')
    driver.close()
    
  6. 使用 python 運行測試腳本 $ python selenium_test.py


結尾

這篇的內容在感覺沒有什麼篇幅,如果有疑問或是有錯誤,還請各位大哥大姐提點。
後續會分別介紹 Selenium IDE、Selenium WebDriver 和 Selenium Grid。
小弟將繼續往下週邁進。 ─=≡Σ((( つ•̀ω•́)つ


參考文件:

Selenium 官方網站
網站自動化測試之美
Python爬虫利器五之Selenium的用法


尚未有邦友留言

立即登入留言