vue-testing-best-practices について
Vue.js アプリのテスト設定とよくある問題を扱う実践ガイドです。コンポーネント、コンポーザブル、エンドツーエンドテストに取り組む Vue 開発者向けです。
主な機能
- 01Vue 3 のテスト環境設定
- 02コンポーネントのブラックボックステスト
- 03非同期処理とライフサイクルのテストパターン
- 04Pinia と Suspense の設定
- 05ブラウザーと Node のランナー選択
活用シーン
- 01Vue のテスト基盤の選定
- 02インジェクションを使うコンポーザブルのテスト
- 03不安定な非同期テストの調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ antfu/ skills --skill vue-testing-best-practicesインストール後、Claude Code で/vue-testing-best-practicesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSE.mdSYNC.mdreference/async-component-testing.mdteleport-testing-complexity.mdtesting-async-await-flushpromises.mdtesting-browser-vs-node-runners.mdtesting-component-blackbox-approach.mdtesting-composables-helper-wrapper.mdtesting-e2e-playwright-recommended.mdtesting-no-snapshot-only.mdtesting-pinia-store-setup.mdtesting-suspense-async-components.mdtesting-vitest-recommended-for-vue.md詳細
Vue.js のテストに関するベストプラクティス、パターン、よくある注意点です。
テスト
- Vue 3 プロジェクトのテスト環境をセットアップする → testing-vitest-recommended-for-vue を参照
- コンポーネント内部のリファクタリングを行うと、テストが繰り返し失敗する → testing-component-blackbox-approach を参照
- 競合状態によってテストが断続的に失敗する → testing-async-await-flushpromises を参照
- ライフサイクルフックや inject を使うコンポーザブルのテストが失敗する → testing-composables-helper-wrapper を参照
- テストで「injection Symbol(pinia) not found」エラーが発生する → testing-pinia-store-setup を参照
- async setup を使うコンポーネントがテストでレンダリングされない → testing-suspense-async-components を参照
- 機能が壊れていてもスナップショットテストが通り続ける → testing-no-snapshot-only を参照
- Vue アプリ向けのエンドツーエンドテストフレームワークを選ぶ → testing-e2e-playwright-recommended を参照
- 算出スタイルや実際の DOM イベントを検証する必要がある → testing-browser-vs-node-runners を参照
- defineAsyncComponent で作成したコンポーネントのテストが失敗する → async-component-testing を参照
- Teleport されたモーダルのコンテンツがラッパーのクエリで見つからない → teleport-testing-complexity を参照
リファレンス
コメント
Markdown 対応