偵錯測試
VS Code 偵錯工具
我們建議使用 VS Code 擴充套件 來進行偵錯,以獲得更好的開發者體驗。有了 VS Code 擴充套件,你可以直接在 VS Code 中偵錯你的測試,查看錯誤訊息,設置斷點並逐步執行你的測試。
![執行測試在除錯模式](https://user-images.githubusercontent.com/13063165/212740233-3f278825-13e7-4a88-a118-dd4478d43a16.png)
錯誤訊息
如果你的測試失敗,VS Code 會在編輯器中直接顯示錯誤訊息,顯示預期的結果、實際接收到的結果以及完整的呼叫日誌。
![錯誤訊息在 vs code](https://user-images.githubusercontent.com/13063165/212738654-b573b7c9-05be-476f-ab4c-201bf4265bc0.png)
即時除錯
您可以在 VS Code 中即時偵錯您的測試。在勾選 Show Browser
選項後執行測試,點擊 VS Code 中的任意定位器,它將在瀏覽器視窗中被高亮顯示。Playwright 也會顯示是否有多個匹配。
![VS Code 中的即時偵錯](https://user-images.githubusercontent.com/13063165/212884329-0755b007-0d69-4987-b084-38fd5bfb577d.png)
您也可以在 VS Code 中編輯定位器,Playwright 會在瀏覽器視窗中即時顯示變更。
![即時除錯在 VS Code](https://user-images.githubusercontent.com/13063165/212884772-5022d4b1-6fab-456f-88e3-506f2354e238.png)
選擇定位器
選擇一個 locator 並通過點擊測試側邊欄中的 Pick locator 按鈕將其複製到你的測試檔案中。然後在瀏覽器中點擊你需要的元素,它現在會顯示在 VS Code 的 Pick locator 框中。按下鍵盤上的 'enter' 鍵將定位器複製到剪貼簿,然後將其粘貼到程式碼中的任何位置。或者如果你想取消,請按 'escape'。
Playwright 會查看你的頁面並找出最佳定位器,優先考慮角色、文本和測試 ID 定位器。如果 Playwright 找到多個匹配定位器的元素,它會改進定位器,使其具有彈性並唯一識別目標元素,因此你不必擔心因定位器而導致測試失敗。
執行在除錯模式下
要設定中斷點,請點擊您希望中斷點所在行號旁邊,直到出現一個紅點。通過右鍵點擊您希望執行的測試旁邊的行,在偵錯模式下執行測試。
![設定 debug 測試模式](https://user-images.githubusercontent.com/13063165/212739847-ecb7dcfe-8929-45f3-b24e-f9c4b592f430.png)
打開瀏覽器視窗,測試將會執行並在設定斷點的地方暫停。你可以在 VS Code 的選單中逐步執行測試、暫停測試並重新執行測試。
![執行測試在除錯模式](https://user-images.githubusercontent.com/13063165/212740233-3f278825-13e7-4a88-a118-dd4478d43a16.png)
在不同瀏覽器中除錯
預設情況下,偵錯是使用 Chromium 配置檔進行的。您可以通過右鍵單擊測試側邊欄中的偵錯圖標,然後從下拉選單中單擊 'Select Default Profile' 選項,在不同的瀏覽器上偵錯您的測試。
![在特定配置上除錯](https://user-images.githubusercontent.com/13063165/212879469-436f8130-c62a-49e1-9d67-c1903b478d5f.png)
然後選擇您想要用來偵錯 測試的測試配置檔。每次在偵錯模式下執行測試時,它將使用您選擇的配置檔。您可以通過右鍵點擊測試所在的行號,並從菜單中選擇 'Debug Test' 來在偵錯模式下執行測試。
![選擇一個偵錯配置](https://user-images.githubusercontent.com/13063165/212880198-eac22c3e-68ce-47da-9163-d6b376ae7575.png)
要了解更多關於除錯的資訊,請參見 Debugging in Visual Studio Code。
Playwright Inspector
Playwright Inspector 是一個 GUI 工具,可以幫助你偵錯 Playwright 測試。它允許你逐步執行測試、即時編輯定位器、選擇定位器並查看可操作性日誌。
![Playwright Inspector](https://user-images.githubusercontent.com/13063165/212924587-4b84e5f6-b147-40e9-8c75-d7b9ab6b7ca1.png)
在除錯模式下執行
執行你的測試並使用 --debug
旗標來開啟檢查器。這會配置 Playwright 進行偵錯並開啟檢查器。當使用 --debug
時,會配置其他有用的預設值:
- 瀏覽器在有頭模式下啟動
- 預設超時設定為 0(= 無超時)