Skip to Content

/moai e2e

ブラウザ自動化ツールを使用して E2E (エンドツーエンド) テスト を作成・実行するコマンドです。

一言まとめ: /moai e2e は「ユーザージャーニーテスター」です。3つのブラウザツール から最適なものを選択し、ユーザーフローを自動テストします。

スラッシュコマンド: Claude Code で /moai:e2e と入力すると、このコマンドを直接実行できます。/moai だけ入力すると、利用可能なすべてのサブコマンドの一覧が表示されます。

概要

E2E テストは、実際のユーザーの視点からアプリケーションが正しく動作するかを検証します。/moai e2e は3つのブラウザ自動化ツールをサポートし、プロジェクト環境に適したツールを自動選択します。

ユーザージャーニーを自動的に発見し、テストスクリプトを生成し、実行結果をレポートします。GIF 録画機能で視覚的な検証も可能です。

使用法

# 自動ツール選択で E2E テスト実行 > /moai e2e # Playwright を指定 > /moai e2e --tool playwright # GIF 録画を含む > /moai e2e --record # 特定 URL を対象 > /moai e2e --url http://localhost:3000 # 特定のユーザージャーニーのみ実行 > /moai e2e --journey login # ヘッドレスモードを無効化 (デバッグ用) > /moai e2e --headless false

サポートされるフラグ

フラグ説明
--tool TOOLブラウザツールの選択 (agent-browser, playwright, chrome-mcp)/moai e2e --tool playwright
--recordブラウザ操作を GIF で録画/moai e2e --record
--url URLテスト対象 URL (デフォルト: プロジェクト設定から自動検出)/moai e2e --url http://localhost:3000
--journey NAME特定のユーザージャーニーのみ実行/moai e2e --journey login
--headlessヘッドレスモード (デフォルト: true)/moai e2e --headless false
--browser BROWSERPlaywright のブラウザ選択 (chromium, firefox, webkit)/moai e2e --browser firefox
--timeout Nテストタイムアウト (秒、デフォルト: 30)/moai e2e --timeout 60
--retry N失敗テストのリトライ回数 (デフォルト: 1)/moai e2e --retry 3

ブラウザ自動化ツール

ツール比較

機能Agent BrowserPlaywright CLIClaude in Chrome
トークンコスト低 (CLI 出力)低 (CLI 出力)高 (MCP ラウンドトリップ)
セットアップnpm installnpx playwright installChrome 拡張必要
ヘッドレス対応対応非対応 (Chrome 必要)
クロスブラウザChromium のみChromium, Firefox, WebKitChrome のみ
GIF 録画Playwright tracePlaywright traceMCP GIF creator
AI ナビゲーション内蔵 AI エージェントスクリプトベースMCP ツールベース
適した用途AI 探索テスト決定的テストスイートインタラクティブデバッグ
CI/CD対応対応非対応

自動選択ロジック

--tool フラグを指定しない場合、タスク特性に応じて最適なツールを自動選択します:

条件選択されるツール理由
--record フラグ使用Claude in Chrome最高の GIF 録画機能
CI/CD 環境検出Playwright CLI最も安定したヘッドレスサポート
AI 探索が必要なジャーニーAgent Browser内蔵 AI ナビゲーション
決定的テストが必要Playwright CLI最も安定、クロスブラウザ
インタラクティブデバッグClaude in Chromeリアルタイムの視覚フィードバック
デフォルトPlaywright CLI機能とトークン効率の最適バランス

実行プロセス

/moai e2e は5段階 (+インストール段階) で実行されます。

Phase 0: ツール選択・インストール

3つのツールのインストール状態を並列で確認します:

# 自動検出コマンド (並列実行) npx agent-browser --version # Agent Browser npx playwright --version # Playwright # Chrome MCP ツールの可用性確認 # Claude in Chrome

インストールが必要な場合:

ツールインストールコマンド
Playwrightnpx playwright install --with-deps chromium
Agent Browsernpm install -g agent-browser
Claude in ChromeChrome 拡張インストール (自動インストール不可)

Phase 1: ジャーニーマッピング

--journey フラグがない場合、アプリケーションを分析して主要なユーザージャーニーを自動発見します:

  • プロジェクトドキュメント (.moai/project/product.md) の分析
  • ルート定義の分析 (routes.ts, urls.py, router.go)
  • フォーム要素、認証フロー、CRUD 操作の特定
  • クリティカルなユーザーパスのマッピング (ログイン、主要機能、エラー処理)

Phase 2: テストスクリプト生成

選択されたツールに合わせたテストファイルを生成します:

ツールテストファイル形式場所
Playwright{journey-name}.spec.tse2e/
Agent Browser{journey-name}.agent.tse2e/
Claude in Chrome構造化された MCP プロンプトメモリ内

Playwright テストに含まれるもの:

  • Page Object Model パターン
  • ステップごとのアサーション
  • スクリーンショットキャプチャ
  • ネットワークレスポンス検証
  • アクセシビリティチェック (@axe-core/playwright)

Phase 3: テスト実行

ツール実行方法
Playwrightnpx playwright test e2e/ (CLI、トークン効率的)
Agent Browsernpx agent-browser --task "..." (CLI、AI ナビゲーション)
Claude in ChromeMCP ツール呼び出し (リアルタイム、高トークンコスト)

Phase 4: 録画 (オプション)

--record フラグ使用時:

ツール録画方法出力
Playwrightnpx playwright test --trace one2e/traces/
Agent Browsernpx agent-browser --task "..." --tracee2e/recordings/
Claude in Chromemcp__claude-in-chrome__gif_creatore2e/recordings/{journey}.gif

Phase 5: レポート

## E2E テストレポート ### 使用ツール: Playwright CLI ### 結果サマリー | ジャーニー | ステータス | 所要時間 | スクリーンショット | |-----------|-----------|---------|-------------------| | ログイン | PASS | 2.3秒 | 3枚 | | 決済 | FAIL | 5.1秒 | 4枚 | ### 失敗詳細 - 決済 (ステップ4): /confirmation へのリダイレクト期待、/error に遷移 - スクリーンショット: e2e/screenshots/checkout-step4.png - エラー: TimeoutError: 30000ms タイムアウト超過 ### 録画 (--record 使用時) - e2e/recordings/login_flow.gif - e2e/recordings/checkout_process.gif ### カバレッジ - テスト済みユーザージャーニー: 5/7 - カバー済みクリティカルパス: 3/3 - テスト済みエラーシナリオ: 2/4

エージェント委任チェーン

エージェントの役割:

エージェント役割主な作業
MoAI オーケストレーターワークフロー調整、ユーザーインタラクションレポート出力、次のステップ案内
expert-testingツール検出、ジャーニーマッピング、スクリプト生成、実行E2E テストパイプライン全体
expert-frontendChrome MCP 実行 (Chrome モードのみ)ブラウザ自動化、GIF 録画

よくある質問

Q: どのツールを選ぶべきですか?

ほとんどの場合、Playwright CLI が最良の選択です。CI/CD サポート、クロスブラウザテスト、低トークンコストを提供します。AI ベースの探索には Agent Browser、視覚的デバッグには Claude in Chrome を使用してください。

Q: CI/CD パイプラインで使用できますか?

Playwright CLI と Agent Browser は CI/CD をサポートします。Claude in Chrome は実際の Chrome ブラウザが必要なため、CI/CD では使用できません。

Q: GIF 録画のトークンコストは?

Playwright/Agent Browser は CLI trace を使用するため、追加トークンコストはありません。Claude in Chrome の GIF 録画は MCP ラウンドトリップにより、トークンコストが高くなります。

Q: 既存の E2E テストがある場合は?

既存のテストを検出し、既存パターンに合わせて新しいテストを追加します。既存テストは上書きされません。

関連ドキュメント

Last updated on