Playwright テストを Docker Image と Projects 機能で安定化・高速化¶
要約¶
複数サブアプリを持つ Next.js プロジェクトで Playwright CI の2つの課題(セットアップ不安定・実行時間)を解決した事例。Playwright 公式 Docker Image でシステム依存パッケージ問題を解消し、projects 機能で変更サブアプリのテストのみを選択実行することで CI 時間を最大42%短縮。
ポイント¶
- 問題1(不安定):
apt-getによるシステム依存パッケージがタイムアウトしていた → Playwright 公式 Docker Image に切り替えで解消 - 問題2(実行時間): 全サブアプリのテストを毎回実行していた →
projects機能でサブアプリ単位に分割、変更サブアプリのみ実行 - 効果: 小さい変更 PR で約42%短縮(12分→7分)、平均で18%短縮
projects機能: playwright.config.ts で複数プロジェクトを定義し、--projectフラグで実行対象を絞れる
参照記事¶
https://tech.newmo.me/entry/playwright-ci-optimization