症狀:你用 Windows 寫完網頁,想知道 Safari 能不能正常使用。 最快解法:先用 Playwright 的 WebKit 做自動化初篩;若課程或專案要求真實 Safari 結果,再到 macOS 上複核。WebKit 測試不是 Safari 實測。
這篇適合正在用 Windows 或學校電腦製作前端課程專案、想增加瀏覽器自動檢查的學生。 如果你已經看見 Safari 樣式或互動有差異,也可以用下面的流程判斷該先查測試,還是改做真實瀏覽器驗收。
先確認要交付哪一種結果
開始測試前,先把作業要求拆成三種不同的驗收目標:
- 頁面能否開啟:確認本機專案啟動後,測試工具能載入指定頁面。
- 重要互動是否正常:例如按鈕能否切換內容、表單送出後是否出現預期提示。自動化測試會像自動批改一樣,依照你寫好的步驟和答案檢查結果。
- 真實 Safari 是否符合要求:如果老師要求 Safari 畫面、操作紀錄或實機結果,Playwright 的測試報告不能代替 Safari 驗收。
Playwright 測試 Safari 的範圍
把 WebKit 想成一個有用的檢查工具,而不是 Safari 的另一個名稱。它能協助你找出部分跨引擎問題,例如頁面載入失敗、按鈕操作無效,或預期文字沒有出現;但測試通過,只能表示目前這組自動化步驟在目前環境下沒有報錯。
下面是開始前最重要的界線:
| 你要確認的事 | Playwright WebKit 初篩 | macOS 上的 Safari 複核 |
|---|---|---|
| 頁面是否能載入 | 適合用自動化步驟檢查 | 可在真實 Safari 再確認 |
| 按鈕、表單等基本操作 | 可寫測試步驟和斷言檢查 | 可觀察實際操作與畫面 |
| Safari 字型、排版或媒體播放表現 | 可協助定位部分疑點,不是最終證明 | 適合依課程要求實際驗收 |
| 交付 Safari 操作紀錄或截圖 | 不能當成 Safari 實測紀錄 | 應使用 Safari 操作並保留紀錄 |
Windows 專案的初篩流程
Playwright 官方提供安裝、執行測試和測試專案設定說明。指令會因專案選擇的程式語言與設定略有不同,實際做法應以官方文件和專案產生的設定為準。安裝說明
- 確認專案可以啟動。先照課程提供的方式啟動網頁,並用瀏覽器打開本機網址。若本機頁面都無法載入,先處理專案啟動錯誤,不要急著把問題歸因於 WebKit。
- 安裝 Playwright 與所需瀏覽器。依官方安裝流程在專案中設定 Playwright,並安裝測試要用的瀏覽器。Windows 能執行 Playwright 的 WebKit 測試,但執行結果仍不等於 Windows 上有 Safari 可供驗收。官方安裝與平台說明
- 確認測試專案名稱。開啟 Playwright 設定檔,查看
projects是否有名稱為webkit的項目。Playwright 以測試專案選擇要執行的瀏覽器設定;如果名稱不同,執行指令也要跟著改。測試專案設定指南 - 加入最小測試。先讓測試開啟你專案中的一個頁面,再檢查一個主要標題或核心按鈕是否存在。不要一開始就把所有頁面、動畫和外部服務都塞進同一支測試。
- 只執行 WebKit 專案。若設定中的專案名稱是
webkit,可以執行npx playwright test --project=webkit。這個選項會依設定選擇該測試專案,而不是替你判定 Safari 是否通過。執行測試的官方說明 - 查看失敗細節並保存結果。記下失敗的測試名稱、頁面網址、錯誤訊息和重現步驟。若有 Trace Viewer 記錄,沿著測試操作檢查當時的頁面狀態;它可協助你追蹤 Playwright 測試,但不會把測試變成 Safari 實測。Trace Viewer 說明
依失敗型態選擇下一步
| 測試觀察 | 優先檢查 | 下一個動作 |
|---|---|---|
| 頁面沒有開啟 | 專案是否已啟動、網址是否正確 | 先修正啟動或路徑問題,再重跑 |
| 找不到按鈕或文字 | 定位器是否對應目前頁面內容 | 檢查元素是否載入、文字是否有改動 |
| 點擊後結果不符預期 | 操作是否成功、斷言是否檢查正確內容 | 查看錯誤與操作記錄,必要時調整等待條件 |
| WebKit 與 Chromium 結果不同 | 同一專案、同一操作和實際錯誤訊息 | 重跑失敗案例,再逐項對照 |
| WebKit 通過,但仍被要求驗收 Safari | 作業要求與實際交付物 | 在 macOS Safari 操作並單獨留存紀錄 |
需要比較瀏覽器結果時,保持專案、頁面和測試步驟一致,只改變執行的測試專案。先重現一次失敗,再看錯誤是找不到元素、頁面沒有開啟,還是檢查答案不符。這樣可以把程式本身、測試腳本與瀏覽器差異分開調查,而不是把所有問題都算成 Safari 相容性。
課程驗收的分流條件
依照要交的成果,直接選擇下一步:
- 若作業只要求自動化檢查頁面和基本互動,就先用 WebKit 跑測試,保存測試結果和錯誤紀錄。
- 若作業要求「Safari 測試」但沒有指定真實瀏覽器證據,先向老師確認 WebKit 自動化是否符合要求;未確認前,不要把兩者寫成同一件事。
- 若作業要求 Safari 截圖、Safari 操作紀錄,或你正在追查字型呈現、版面差異與媒體播放,就在 macOS Safari 實際操作,記下頁面、操作和觀察結果。
- 若手邊沒有 Mac,先完成 Windows 上的 WebKit 初篩,再尋找符合課程規定的真實 Mac 驗收環境;未做 Safari 複核前,將交付標示為 WebKit 測試,而不是 Safari 實測。
FAQ:WebKit 初篩與 Safari 複核
WebKit 測試通過,是否代表 Safari 一定正常?
不代表。通過表示目前設定的自動化測試沒有發現它所檢查的問題,不代表所有版面、字型、媒體功能或平台行為都已驗證。若課程要求 Safari 實測,仍需用 Safari 操作並記錄結果。
Windows 上的測試結果可以交作業嗎?
要看作業要求。若要求的是使用 Playwright 做 WebKit 自動化初篩,Windows 測試可以提供相關紀錄;若要求真實 Safari 截圖或操作結果,Windows 上的 WebKit 報告不能取代 Safari 證據。交作業前先確認老師採用哪一種驗收定義。
只跑 WebKit 時,專案沒有該名稱怎麼辦?
先查看 Playwright 設定檔內的測試專案名稱。--project 後方要使用設定中的名稱;若尚未建立 WebKit 專案,先依官方測試專案文件設定,再執行測試。不要只複製指令就把「沒有符合專案」誤判成網頁相容性錯誤。
沒有 Mac,如何完成真實 Safari 驗收?
先完成可在 Windows 執行的自動化初篩,再確認課程允許使用的 Mac 環境與交付證據要求。你可以詢問學校是否有合規的 Mac 可用,或評估遠端 macOS 是否符合課程規則;若使用遠端環境,仍需實際開啟 Safari 並保存操作和觀察結果。
Windows 和學校電腦適合先寫程式、跑自動化初篩,但它們無法直接提供真實 Safari 的驗收證據;而 WebKit 通過報告、學校電腦的安裝權限限制,也都可能讓最後的交付多出一道確認工作。若你只在課程驗收階段需要 macOS,購買 Mac 未必是必要選擇;可以先比較MACGPU 的 Mac 使用方案,確認遠端環境符合課程要求後,再用它完成 Safari 複核。若課程要求本機裝置或特定實體連接,就應依課程規定選擇其他合規環境。