Skip to main content

安裝

簡介

Playwright 是專為滿足端到端測試需求而建立的。Playwright 支援所有現代渲染引擎,包括 Chromium、WebKit 和 Firefox。在 Windows、Linux 和 macOS 上進行測試,可以是本地或 CI 上,無頭或有頭,並具有原生行動模擬功能。

Playwright 函式庫 可以用作通用的瀏覽器自動化工具,提供一套強大的 API 來自動化網頁應用程式,適用於同步和非同步的 Python。

這個介紹描述了 Playwright Pytest 外掛,這是撰寫端到端測試的推薦方式。

你將學到

安裝 Playwright Pytest

Playwright 建議使用官方的 Playwright Pytest plugin 來撰寫端到端測試。它提供上下文隔離,並在多個瀏覽器配置上開箱即用地執行。

開始安裝 Playwright 並執行範例測試以查看其效果。

安裝 Pytest plugin

pip install pytest-playwright

安裝所需的瀏覽器:

playwright install

新增範例測試

建立一個遵循 test_ 前綴約定的檔案,例如 test_example.py,在當前工作目錄或包含以下程式碼的子目錄中。確保你的測試名稱也遵循 test_ 前綴約定。

test_example.py
import re
from playwright.sync_api import Page, expect

def test_has_title(page: Page):
page.goto("https://playwright.dev/")

# Expect a title "to contain" a substring.
expect(page).to_have_title(re.compile("Playwright"))

def test_get_started_link(page: Page):
page.goto("https://playwright.dev/")

# Click the get started link.
page.get_by_role("link", name="Get started").click()

# Expects page to have a heading with the name of Installation.
expect(page.get_by_role("heading", name="Installation")).to_be_visible()

執行這個範例測試

預設情況下,測試將在 chromium 上執行。這可以通過 CLI options 進行配置。測試在無頭模式下執行,這意味著在執行測試時不會打開瀏覽器 UI。測試結果和測試日誌將顯示在終端中。

pytest

更新 Playwright

要更新 Playwright 到最新版本,執行以下命令:

pip install pytest-playwright playwright -U

系統需求

  • Python 3.8 或更高版本。
  • Windows 10+、Windows Server 2016+ 或 Windows Subsystem for Linux (WSL)。
  • macOS 13 Ventura 或 macOS 14 Sonoma。
  • Debian 11、Debian 12、Ubuntu 20.04 或 Ubuntu 22.04、Ubuntu 24.04,適用於 x86-64 和 arm64 架構。

接下來是什麼