O hirunewani blog

CI上でPlaywrightのテストが落ちたら確認すること

Created at

CI上でPlaywrightのテストが落ちた場合、どのようなことを確認すると良いか書いた。

まだPlaywightに慣れていない人向けにCI上でテストが落ちた場合、どのようなことを確認すると良いか書いた。

  1. まずはCIのログを確認する。
    • Playwight以外の原因でエラーが出ている場合がある。
    • 分からないと言われて確認すると、Playwightの実行時間が長くCIのタイムアウトに引っかかっていたり、前段の処理でエラーが出ていたことがあった。
  2. Playwrightのエラーが出ている場合は、どのようなエラーが出ているかを確認する。
  3. Playwrightのレポートを出力している場合は、レポートを確認する。
  4. 確認しても原因がわからない場合は、ローカルでテストを実行する。
  5. 落ちているテストがローカルでFlakyでないかを確認する。
    • ローカルでもFlakyである場合、CI上のマシンスペックによって落ちやすくなっている可能性がある。
    • この場合、まずはFlakyテストの改善を行うべきである。
  6. ローカルでは安定してエラーが出ない場合は、CIの環境に問題がある可能性がある。CIの環境とローカルの環境を比較して、違いを確認する。
    • 特にCI上かつWebkitでのみ落ちている場合、Linuxランナーを利用していることに起因しており、macOSランナーを利用することで解消する場合が度々ある。
  7. ローカルでもエラーが出る場合は、UIモードやDebugモードを利用して、エラーが出ている際に画面やネットワークがどうなっているかを確認する。
# uiモードで起動する
npx playwright test --ui
# debugモードで起動する
npx playwright test --debug