使用 Python 和 Selenium 自動化網頁測試

nisan發表於2024-07-27

使用 Python 和 Selenium 自動化網頁測試

概述

本技術文件介紹如何使用 Python 和 Selenium 庫來自動化網頁測試。Selenium 是一款強大的工具,可以模擬使用者的瀏覽器行為,自動化網頁互動,從而高效地執行測試用例。

安裝環境

  1. 安裝 Python:https://www.python.org/downloads/ 下載並安裝最新版本的 Python。
  2. 安裝 Selenium 庫: 開啟命令列終端,執行以下命令:
pip install selenium
  1. 下載瀏覽器驅動:
    • 對於 Chrome 瀏覽器,請從 https://chromedriver.chromium.org/downloads 下載對應版本的 Chromedriver。
    • 對於 Firefox 瀏覽器,請從 https://github.com/mozilla/geckodriver/releases 下載對應版本的 Geckodriver。
    • 將下載的驅動檔案放到系統環境變數 PATH 所指向的目錄下,以便 Python 能夠識別。

程式碼示例

以下程式碼演示如何使用 Python 和 Selenium 自動化測試一個簡單的網頁:

from selenium import webdriver
from selenium.webdriver.common.by import By

# 建立 Chrome 瀏覽器例項
driver = webdriver.Chrome()

# 開啟測試網頁
driver.get("https://www.example.com")

# 查詢網頁元素
search_box = driver.find_element(By.NAME, "q")

# 輸入搜尋關鍵詞
search_box.send_keys("Selenium")

# 點選搜尋按鈕
search_button = driver.find_element(By.XPATH, "//button[@type='submit']")
search_button.click()

# 驗證搜尋結果
results = driver.find_elements(By.XPATH, "//div[@class='result']")
assert len(results) > 0, "No search results found!"

# 關閉瀏覽器
driver.quit()

程式碼解釋

  • 匯入必要的庫: 匯入 webdriver 模組用於建立瀏覽器例項,以及 By 模組用於指定元素定位方式。
  • 建立瀏覽器例項: 使用 webdriver.Chrome() 建立 Chrome 瀏覽器例項,也可以使用 webdriver.Firefox() 建立 Firefox 瀏覽器例項。
  • 開啟網頁: 使用 driver.get() 方法開啟指定的網頁。
  • 查詢元素: 使用 driver.find_element() 方法根據指定的定位方式查詢網頁元素。
  • 操作元素: 使用 send_keys() 方法輸入文字,使用 click() 方法點選元素。
  • 驗證結果: 使用 assert 語句進行斷言,確保測試結果符合預期。
  • 關閉瀏覽器: 使用 driver.quit() 方法關閉瀏覽器。

總結

本技術文件介紹瞭如何使用 Python 和 Selenium 自動化網頁測試的基本方法。透過使用 Selenium 庫,我們可以模擬使用者行為,自動化測試流程,從而提高測試效率和程式碼質量。

參考資料

  • Selenium 官網
  • Selenium 文件
  • Python 文件

相關文章