mcpField
F
form-testing

form-testing

github.com/revitalb-portテスト・品質055 回インストール10 週間前に更新
リポジトリ

form-testing について

Cursor の組み込みブラウザーでアプリのフォームを体系的にテストするスキルです。フォームの発見、入力検証、正常送信、境界ケースを確認し、結果をまとめます。

主な機能

  1. 01アプリ内のフォームを探索
  2. 02空欄・不正値・正常送信をテスト
  3. 03二重送信と長文入力を確認
  4. 04Tab 順序、コンソール、ネットワークエラーを確認
  5. 05失敗項目を報告用に整理

活用シーン

  1. 01ログインと登録の検証テスト
  2. 02設定や購入フォームの確認
  3. 03フォームの動作やアクセシビリティ上の問題の発見

インストール

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

$npx skills add https://github.com/revitalb-port/skills-registry-demo --skill form-testing

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

詳細

フォームのテスト

Cursor に組み込まれているブラウザーを使って、アプリ内のすべてのフォームを体系的にテストします。

ワークフロー

1. すべてのフォームを見つける

browser_snapshot を使ってアクセシビリティツリーを取得します。form 要素、または input、select、textarea 要素のグループを探します。

アプリのメインページを移動して、すべてのフォームを見つけます。

  • ログイン/サインアップページ
  • 設定/プロフィールページ
  • 検索バー
  • お問い合わせ/フィードバックフォーム
  • チェックアウトフロー
  • 入力欄のあるモーダル
2. 各フォームをテストする

各フォームについて、次の3つのテストを実行します。

テスト1:未入力で送信

  • すべてのフィールドを空のままフォームを送信します
  • 必須フィールドにバリデーションエラーが表示されることを確認します
  • サーバーエラーが発生しないことを確認します(クライアント側でバリデーションされる必要があります)

テスト2:無効なデータ

  • メールアドレス欄:notanemail を入力します
  • パスワード欄:a(短すぎる)を入力します
  • 数値欄:abc を入力します
  • 電話番号欄:12345 を入力します
  • URL 欄:not-a-url を入力します
  • 適切なエラーメッセージが表示されることを確認します

テスト3:有効なデータ

  • browser_fill または browser_fill_form を使って、すべてのフィールドに現実的なテストデータを入力します
  • フォームを送信します
  • 成功状態(リダイレクト、トースト、確認メッセージ)を確認します
  • browser_console_messages でエラーを確認します
  • browser_network_requests で失敗した API 呼び出しを確認します
3. エッジケースを確認する
  • 二重送信:送信ボタンを素早く2回クリックします。二重送信が防止される必要があります
  • 長い入力:非常に長い文字列(1000文字以上)を貼り付けます。切り詰められるか、拒否される必要があります
  • 特殊文字:<script>alert('xss')</script> を入力します。エスケープされる必要があります
  • タブ順序:Tab を使ってフォーカスがフィールド間を論理的な順序で移動することを、browser_press で確認します
4. 報告
Form Test Results:
  Login form (/login):
    Empty submit: PASS — shows "Email required", "Password required"
    Invalid email: PASS — shows "Invalid email"
    Valid submit: PASS — redirects to /dashboard
    XSS check: PASS — input escaped

  Settings form (/settings):
    Empty submit: FAIL — submits without validation, returns 500
    Valid submit: PASS — shows "Settings saved" toast

見つかった失敗を修正します。

コメント