mcpField
F
form-testing

form-testing

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

form-testing について

Cursor内蔵ブラウザーでアプリのフォームを体系的にテストするスキルです。フォームの発見、入力検証、境界ケースの確認、結果報告を案内します。

主な機能

  1. 01アクセシビリティスナップショットでフォームを発見
  2. 02空欄・無効値・有効値で送信をテスト
  3. 03二重送信と長文入力を確認
  4. 04特殊文字の処理とTab順を検証
  5. 05結果を報告し失敗を調査

活用シーン

  1. 01ログインや設定フォームの入力検証を監査
  2. 02実データに近い値で購入フォームを確認
  3. 03送信時のブラウザーやAPIのエラーを検出

インストール

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

$npx skills add https://github.com/spencerpauly/awesome-cursor-skills --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

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

コメント