adding-e2e-tests について
Web プロジェクトに Playwright のエンドツーエンドテストを導入する開発者向けのスキルです。設定、スモークテスト、スクリプト、CI までの手順を扱います。
主な機能
- 01Playwright のインストールと設定
- 02ページ表示のスモークテスト
- 03任意のページオブジェクトパターン
- 04npm スクリプトと除外設定
- 05GitHub Actions CI の手順
- 06codegen によるテスト記録
活用シーン
- 01Web プロジェクトへのブラウザテスト追加
- 02既存テストランナーでの Playwright 設定
- 03CI でのエンドツーエンドテスト実行
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ spencerpauly/ awesome-cursor-skills --skill adding-e2e-testsインストール後、Claude Code で/adding-e2e-testsを入力して読み込まれたか確認します。
詳細
E2E テストを追加する(Playwright)
ユーザーがエンドツーエンドテスト、ブラウザテスト、統合テストの追加、または Playwright のセットアップを依頼した場合に、このスキルを使用します。
手順
-
Playwright をインストールする
npm init playwright@latestこれにより、
playwright.config.tsとtests/ディレクトリが作成され、ブラウザーがインストールされます。プロジェクトにすでにテストランナーがある場合は、手動でインストールします。npm install -D @playwright/test npx playwright install -
playwright.config.tsを設定する-
baseURLをローカル開発サーバーの URL(例:http://localhost:3000)に設定します。 -
開発サーバーを自動的に起動するように
webServerを設定します。webServer: { command: "npm run dev", url: "http://localhost:3000", reuseExistingServer: !process.env.CI, }, -
ローカル開発時の速度を優先して Chromium のみを有効にし、CI ではすべてのブラウザーを有効にします。
-
-
スモークテストを作成する — アプリが読み込まれることを確認する基本的なテストを作成します。
import { test, expect } from "@playwright/test"; test("homepage loads", async ({ page }) => { await page.goto("/"); await expect(page).toHaveTitle(/.+/); }); -
ページオブジェクトパターンを追加する(任意) — 大規模なアプリでは、セレクターと操作をカプセル化するページオブジェクトを格納する
tests/pages/ディレクトリを作成します。 -
npm スクリプトを追加する
{ "test:e2e": "playwright test", "test:e2e:ui": "playwright test --ui" } -
.gitignoreに追加するtest-results/ playwright-report/ blob-report/ -
CI との統合 —
npx playwright install --with-depsに続けてnpm run test:e2eを実行する GitHub Actions のステップを追加します。失敗時に HTML レポートを保存するには、公式のactions/upload-artifactを使用します。
注意事項
- セレクターには CSS クラスではなく、
data-testid属性を使用します。 - 関連するテストをまとめるには
test.describeを使用します。 npx playwright codegenを実行すると、テストを対話形式で記録できます。