執行與偵錯測試
簡介
您可以執行單個測試、一組測試或所有測試。 測試可以在一個或多個瀏覽器上運行,透過使用 --browser
標記。 預設情況下,測試以無頭模式運行,這意味著在運行測試時不會打開瀏覽器視窗,結果將在終端機中看到。 如果您願意,可以使用 --headed
CLI 參數在有頭模式下運行測試。
您將學到
執行測試
命令列
要執行測試,請使用 pytest
命令。 這將預設在 Chromium 瀏覽器上運行您的測試。 預設情況下,測試以無頭模式運行,這意味著在運行測試時不會打開瀏覽器視窗,結果將在終端機中看到。
pytest
在有頭模式下執行測試
要在有頭模式下執行測試,請使用 --headed
標記。 這將在運行測試時打開一個瀏覽器視窗,完成後瀏覽器視窗將關閉。
pytest --headed
在不同的瀏覽器上執行測試
要指定您想在哪個瀏覽器上運行測試,請使用 --browser
標記,後跟瀏覽器的名稱。
pytest --browser webkit
要指定多個瀏覽器來運行測試,請多次使用 --browser
標記,後跟每個瀏覽器的名稱。
pytest --browser webkit --browser firefox
執行特定測試
要運行單個測試檔案,請傳入您要運行的測試檔案的名稱。
pytest test_login.py
要運行一組測試檔案,請傳入您要運行的測試檔案的名稱。
pytest tests/test_todo_page.py tests/test_landing_page.py
要運行特定測試,請傳入您要運行的測試的函式名稱。
pytest -k test_add_a_todo_item
平行執行測試
要平行運行測試,請使用 --numprocesses
標記,後跟您想要在其上運行測試的進程數。 我們建議邏輯 CPU 核心數的一半。
pytest --numprocesses 2
(這假設已安裝 pytest-xdist
。有關更多資訊,請參閱此處。)
有關更多資訊,請參閱 Playwright Pytest 用法 或 Pytest 文件關於 一般 CLI 用法。
偵錯測試
由於 Playwright 在 Python 中運行,您可以使用您選擇的偵錯器對其進行偵錯,例如,在 Visual Studio Code 中使用 Python 擴充功能。 Playwright 附帶 Playwright Inspector,它允許您逐步執行 Playwright API 呼叫、查看其偵錯日誌並探索 定位器。
要偵錯所有測試,請運行以下命令。
- Bash
- PowerShell
- Batch
PWDEBUG=1 pytest -s
$env:PWDEBUG=1
pytest -s
set PWDEBUG=1
pytest -s
要偵錯一個測試檔案,請運行命令,後跟您要偵錯的測試檔案的名稱。
- Bash
- PowerShell
- Batch
PWDEBUG=1 pytest -s test_example.py
$env:PWDEBUG=1
pytest -s test_example.py
set PWDEBUG=1
pytest -s test_example.py
要偵錯特定測試,請添加 -k
,後跟您要偵錯的測試的名稱。
- Bash
- PowerShell
- Batch
PWDEBUG=1 pytest -s -k test_get_started_link
$env:PWDEBUG=1
pytest -s -k test_get_started_link
set PWDEBUG=1
pytest -s -k test_get_started_link
此命令將打開一個瀏覽器視窗以及 Playwright Inspector。 您可以使用 Inspector 頂部的單步跳過按鈕來逐步執行您的測試。 或按下播放按鈕從頭到尾運行您的測試。 測試完成後,瀏覽器視窗將關閉。
在偵錯時,您可以使用「選取定位器」按鈕來選取頁面上的元素,並查看 Playwright 將用於查找該元素的定位器。 您還可以編輯定位器,並在瀏覽器視窗中即時查看其突出顯示。 使用「複製定位器」按鈕將定位器複製到剪貼簿,然後將其貼到您的測試中。
查看我們的 偵錯指南,以了解更多關於 Playwright Inspector 以及使用 瀏覽器開發人員工具 進行偵錯的資訊。