ui-test-testcafe について
TestCafe を使う、または TestCafe 向けの成果物を必要とするプロジェクト向けに、UI テストの計画と作成を支援するスキルです。既存ランナーとの互換性、テストセッションの分離、業務状態の検証を重視します。
主な機能
- 01TestCafe 向けテスト計画
- 02ランナー互換性の確認
- 03セッションとテストデータの分離
- 04業務状態のアサーション
- 05CI への失敗伝播
活用シーン
- 01既存の TestCafe プロジェクトでの UI テスト計画
- 02テストアカウントとセッションの分離
- 03テスト失敗を CI に反映
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ naodeng/ awesome-qa-skills --skill ui-test-testcafeインストール後、Claude Code で/ui-test-testcafeを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdagents/openai.yamlevals/eval.yamlevals/cases/basic-success.yamldomain-method-regression.yamledge-incomplete-input.yamledge-scope-boundary.yamlevals/fixtures/check_domain_decisions.pycheck-domain-decisions.shdomain-oracle.jsonevals/fixtures/checkout-app/checkout.test.jsindex.htmlREADME.mdreceipt.htmlserver.mjsexamples/sample-context.mdoutput-templates/template-markdown.mdprompts/ui-test-testcafe.mdreferences/domain-decision-example.mdframework-spec.mdsetup-and-ci.mdscripts/run-tests.sh詳細
TestCafe UI テスト(英語版)
中国語版: 対応する中国語版スキルをご覧ください。
使用する場面
- TestCafe の UI テストワークフローで利用する出力が必要な場合。
- プロジェクトですでに TestCafe を使用している場合、または TestCafe に対応した計画を立てたい場合。
出力形式のオプション
リクエストで別の形式が明示されていない限り、デフォルトは Markdown です。
使用方法
prompts/ui-test-testcafe.mdを開き、メインのプロンプトとして使用します。- 範囲、環境、制約、リスク、依存関係、期待する成果物など、実際のプロジェクトのコンテキストを追加します。
- 入力が不完全な場合は、利用可能な初版を作成し、不足情報と前提を明記します。
参考ファイル
-
ドメインの判断結果、有効なコントロール、または証拠の不足を調整する際は、サニタイズ済みの入力、項目ごとのオラクル、再現可能な計算を確認するため、references/domain-decision-example.md をお読みください。
-
prompts/ui-test-testcafe.md:このスキルのメインプロンプト。 -
references/framework-spec.md:ツール固有の構成とカバレッジに関する注意事項。 -
references/setup-and-ci.md:セットアップ、実行、CI に関する注意事項。 -
examples/sample-context.md:リクエストコンテキストのサンプル。 -
scripts/run-tests.sh:ローカルで実行するための軽量なエントリーポイント。
ドメイン実行の要点
- TestCafe/Node/ブラウザー、ネイティブ自動化モード、CI、レポーターのバージョンを確認します。既存のランナーと互換性のあるフィクスチャ/テスト/設定を作成します。設定が不足している場合は未確定事項として扱い、暗黙にアップグレードしません。
- Roles または独立した ID で分離されたセッションを初期化し、アカウント/ビジネスキーも分離します。非同期の
tアクションはawaitし、固定時間のスリープではなく、サポートされている Selector/アサーションの待機機能を使用します。 - 支払い済み状態、金額、元本を検証します。境界値のスタブで実際の UI を迂回してはいけません。通常のタイトルは成功を意味しません。ネガティブコントロールではビジネスアサーションが失敗する必要があります。
- CLI の終了コードが 0 以外の場合、またはプログラムによる
failedCount>0の場合は、CI を失敗させる必要があります。レポーターが失敗を握りつぶしてはいけません。スクリーンショット/コンソール/テスト ID を保持し、クリーンアップを行います。設定の解析に成功することと、実際に実行されることは別です。
よくある落とし穴
- 範囲が曖昧でコンテキストがない状態で使用しないでください。
- すべての領域を同じ重要度として扱わないでください。
- 前提や不足情報を省略しないでください。
ベストプラクティス
-
プロンプトファイルを起点とし、重要なコンテキストだけを追加します。
-
リスクを重視し、実行可能な出力にします。
-
リクエストが不完全な場合は、利用可能な初版を作成し、不足事項を明記します。
-
生成されたビジネスアサーション、失敗の伝播、または分離を検証するには、evals/fixtures/checkout-app/README.md と、ローカルの good/bug/timeout コントロールをお読みください。実行を依頼された場合に限り、実行してください。