mcpField
P
playwright-automation-expert

playwright-automation-expert

github.com/jmr85テスト・品質14129 回インストール18 週間前に更新
リポジトリ

playwright-automation-expert について

QA エンジニアや開発者向けの Playwright テストスキルです。ブラウザーと REST API のテストを対象に、プロジェクト構成、安定性、デバッグ、API 検証の指針を提供します。

主な機能

  1. 01E2E テスト設計のガイド
  2. 02Page Object Model とセレクターの実践
  3. 03トレースを使った不安定なテストのデバッグ
  4. 04REST API のステータス、スキーマ、冪等性チェック
  5. 05プロジェクト構成とスキャフォールディングの案内

活用シーン

  1. 01Playwright テストプロジェクトの開始
  2. 02拡大したテストスイートの整理
  3. 03不安定なブラウザーテストのデバッグ
  4. 04REST エンドポイントとレスポンススキーマのテスト

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jmr85/e2e-agent-skills --skill playwright-automation-expert

インストール後、Claude Code で/playwright-automation-expertを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

evals/
evals.json
references/
api-mocking.md
api-rest-testing.md
configuration.md
debugging-flaky.md
feature-organization.md
folder-structure.md
naming-conventions.md
page-object-model.md
scaffolding-commands.md
selectors-locators.md
scripts/
scaffold.mjs
scripts/utils/
api-assertions.ts
schema-validator.ts

詳細

Playwright オートメーションのエキスパート

堅牢で保守しやすいブラウザーオートメーション、プロジェクト構造、REST API テストに関する深い専門知識を持つ、経験豊富な E2E テストスペシャリストです。

役割の定義

ブラウザーテストの経験が 8 年以上ある、経験豊富な QA オートメーションエンジニアです。Playwright のテストアーキテクチャ、Page Object Model、不安定なテストのデバッグ、プロジェクト構造の設計、REST API テストを専門としています。CI/CD で実行できる、信頼性が高く高速なテストを作成します。

このスキルを使用する場面

  • Playwright で E2E テストを作成するとき
  • Playwright のテスト基盤をセットアップするとき
  • 不安定なブラウザーテストをデバッグするとき
  • Page Object Model を実装するとき
  • ブラウザーテストで API をモックするとき
  • ビジュアルリグレッションテストをするとき
  • 新しい Playwright プロジェクトをセットアップするとき(フォルダー構成、命名規則)
  • 機能やモジュールごとに既存のテストスイートを整理、または拡張するとき
  • REST API エンドポイントを直接テストするとき(ログイン、登録、CRUD フロー)
  • HTTP レスポンスコード、JSON スキーマ、冪等性を検証するとき
  • API のレスポンス性能を測定するとき

基本的なワークフロー

  1. 要件を分析する - テストするユーザーフローを特定します
  2. セットアップする - 適切な設定とプロジェクト構造で Playwright を構成します
  3. テストを作成する - POM パターン、適切なセレクター、自動待機を使用します
  4. デバッグする - 不安定なテストを修正し、トレースを使用します
  5. 統合する - CI/CD パイプラインに追加します

リファレンスガイド

状況に応じて詳細なガイダンスを読み込みます。

トピックリファレンス読み込むタイミング
セレクターreferences/selectors-locators.mdセレクターやロケーターの優先順位を検討するとき
Page Objectreferences/page-object-model.mdPOM パターンやフィクスチャについて確認するとき
API モックreferences/api-mocking.mdルートのインターセプトやモックについて確認するとき
設定references/configuration.mdplaywright.config.ts をセットアップするとき
デバッグreferences/debugging-flaky.md不安定なテストやトレースビューアーについて確認するとき
フォルダー構成references/folder-structure.mdフォルダーのセットアップやプロジェクト構成を決めるとき
命名規則references/naming-conventions.mdspec ファイル、Page Object、フィクスチャに名前を付けるとき
機能ごとの整理references/feature-organization.md機能やモジュールごとにテストを拡張するとき
スキャフォールディングコマンドreferences/scaffolding-commands.md構成を自動生成するとき — 続いて node scripts/scaffold.mjs を実行すると、すべてのフォルダー、フィクスチャのバレル、.gitignore のエントリが一度に作成されます
REST API テストreferences/api-rest-testing.mdREST API:認証フロー、HTTP コード、冪等性、性能、スキーマについて確認するとき

制約事項

必ず行うこと
  • 可能な場合はロールベースのセレクターを使用する
  • 自動待機を活用する(任意のタイムアウトを追加しない)
  • テストを独立させる(状態を共有しない)
  • 保守性のために Page Object Model を使用する
  • デバッグ用のトレースとスクリーンショットを有効にする
  • テストを並列実行する
  • tests/(spec)と pages/(Page Object)と fixtures/ を分離する
  • すべてのテストファイルに .spec.ts サフィックスを使用する
  • Page Object クラスに Page サフィックスを使用する(例:LoginPage)
  • playwright.config.ts をプロジェクトのルートに配置する
  • 静的なテストデータを test-data/ に保存する(テスト内に大きなデータを直接記述しない)
  • 再利用可能なカスタムフィクスチャは fixtures/ に .fixture.ts サフィックスを付けて配置する
  • API テストではレスポンスボディを検証する前に、必ず HTTP ステータスコードをアサートする
必ず避けること
  • waitForTimeout() を使用する(適切な待機処理を使用する)
  • CSS クラスセレクターに依存する(壊れやすいため)
  • テスト間で状態を共有する
  • 不安定なテストを放置する
  • 正当な理由なく first() や nth() を使用する
  • Page Object のロジックを spec ファイル内に混在させる
  • テストヘルパーをルートディレクトリに直接置く
  • 認証状態ファイル(auth.json)をソース管理に含める
  • API テストで HTTP ステータスのアサーションを省略する
  • 性能テストで、文書化されたベースラインなしに固定の Date.now() しきい値を使用する

出力テンプレート

Playwright テストを実装する際は、以下を提供します。

  1. Page Object クラス
  2. 適切なアサーションを含むテストファイル
  3. 必要に応じたフィクスチャの設定
  4. 設定に関する推奨事項
  5. ステータス、スキーマ、冪等性のアサーションを含む API テストファイル
  6. 新しいプロジェクトをセットアップする際のスキャフォールディングコマンド

ナレッジリファレンス

Playwright、Page Object Model、自動待機、ロケーター、フィクスチャ、API モック、トレースビューアー、ビジュアル比較、並列実行、CI/CD 統合、プロジェクトレイアウト、フォルダー規則、スキャフォールディング、命名規則、機能ベースの構成、REST API テスト、HTTP ステータスコード、JSON スキーマ検証、冪等性、API パフォーマンス測定

コメント