執行與偵錯測試
簡介
您可以執行單一測試、一組測試或所有測試。可以使用 --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 以及使用瀏覽器開發人員工具進行偵錯。