CI上でPlaywrightのテストが落ちたら確認すること
CI上でPlaywrightのテストが落ちた場合、どのようなことを確認すると良いか書いた。
まだPlaywightに慣れていない人向けにCI上でテストが落ちた場合、どのようなことを確認すると良いか書いた。
- まずはCIのログを確認する。
- Playwight以外の原因でエラーが出ている場合がある。
- 分からないと言われて確認すると、Playwightの実行時間が長くCIのタイムアウトに引っかかっていたり、前段の処理でエラーが出ていたことがあった。
- Playwrightのエラーが出ている場合は、どのようなエラーが出ているかを確認する。
- Playwrightのレポートを出力している場合は、レポートを確認する。
- Github Actionsの場合、公式通りの設定をしていればアーティストに出力されている。
- https://playwright.dev/docs/ci-intro#setting-up-github-actions
- 確認しても原因がわからない場合は、ローカルでテストを実行する。
- 落ちているテストがローカルでFlakyでないかを確認する。
- ローカルでもFlakyである場合、CI上のマシンスペックによって落ちやすくなっている可能性がある。
- この場合、まずはFlakyテストの改善を行うべきである。
- ローカルでは安定してエラーが出ない場合は、CIの環境に問題がある可能性がある。CIの環境とローカルの環境を比較して、違いを確認する。
- 特にCI上かつWebkitでのみ落ちている場合、Linuxランナーを利用していることに起因しており、macOSランナーを利用することで解消する場合が度々ある。
- ローカルでもエラーが出る場合は、UIモードやDebugモードを利用して、エラーが出ている際に画面やネットワークがどうなっているかを確認する。
# uiモードで起動する
npx playwright test --ui
# debugモードで起動する
npx playwright test --debug