vitest について
Vitest のスキルリファレンスです。Vite を基盤とする JavaScript・TypeScript 向けテストフレームワークについて、Jest 互換 API やモック、カバレッジ、並列実行などを扱います。
主な機能
- 01Jest 互換のテスト API
- 02ESM、TypeScript、JSX の標準サポート
- 03スマートウォッチモードと並列ワーカー
- 04モック、スナップショット、カバレッジ
- 05テスト環境と型テスト
活用シーン
- 01Vite アプリのテスト作成
- 02コード変更の影響を受けたテストの再実行
- 03カバレッジ測定と型テスト
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ onmax/ nuxt-skills --skill vitestインストール後、Claude Code で/vitestを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/advanced-environments.mdadvanced-projects.mdadvanced-type-testing.mdadvanced-vi.mdcore-cli.mdcore-config.mdcore-describe.mdcore-expect.mdcore-hooks.mdcore-test-api.mdfeatures-benchmarking.mdfeatures-concurrency.mdfeatures-context.mdfeatures-coverage.mdfeatures-filtering.mdfeatures-mocking.mdfeatures-reporters.mdfeatures-snapshots.mdfeatures-test-tags.md詳細
Vitest は Vite を基盤とする次世代のテストフレームワークです。ネイティブ ESM、TypeScript、JSX を標準でサポートする、Jest 互換の API を提供します。Vitest は、Vite アプリと同じ設定、トランスフォーマー、リゾルバー、プラグインを共有します。
主な機能:
- Vite ネイティブ:Vite の変換パイプラインを使用し、HMR のように高速にテストを更新します
- Jest 互換:ほとんどの Jest テストスイートを置き換えられます
- スマートなウォッチモード:モジュールグラフに基づき、影響を受けたテストのみを再実行します
- 設定不要でネイティブ ESM、TypeScript、JSX をサポート
- マルチスレッドワーカーによる並列テスト実行
- V8 または Istanbul による組み込みのカバレッジ機能
- スナップショットテスト、モック、スパイユーティリティ
このスキルは Vitest 5.0.1 に基づいており、2026-09-25 に生成されました。
コア
| トピック | 説明 | 参照 |
|---|---|---|
| 設定 | Vitest と Vite の設定連携、defineConfig の使用 | core-config |
| CLI | コマンドラインインターフェース、コマンドとオプション | core-cli |
| テスト API | test/it 関数、skip、only、concurrent などの修飾子 | core-test-api |
| Describe API | テストとネストしたスイートをグループ化する describe/suite | core-describe |
| Expect API | toBe、toEqual、マッチャー、非対称マッチャーによるアサーション | core-expect |
| フック | beforeEach、afterEach、beforeAll、afterAll、aroundEach | core-hooks |
機能
| トピック | 説明 | 参照 |
|---|---|---|
| モック | vi ユーティリティによるモック関数、モジュール、タイマー、日付 | features-mocking |
| スナップショット | toMatchSnapshot とインラインスナップショットによるテスト | features-snapshots |
| カバレッジ | V8 または Istanbul プロバイダーによるコードカバレッジ | features-coverage |
| テストコンテキスト | テストフィクスチャ、context.expect、カスタムフィクスチャ用の test.extend | features-context |
| 並行処理 | 並行テスト、並列実行、シャーディング | features-concurrency |
| フィルタリング | 名前、ファイルパターン、タグによるテストのフィルタリング | features-filtering |
| テストタグ | テストにタグを付け、実行をフィルタリングし、共有オプションを適用 | features-test-tags |
| レポーター | 組み込みレポーター、デフォルトの選択、CI/出力設定 | features-reporters |
| ベンチマーク | bench フィクスチャ(Tinybench)を使ったベンチマークの作成 | features-benchmarking |
高度なトピック
| トピック | 説明 | リファレンス |
|---|---|---|
| Vi ユーティリティ | vi ヘルパー:mock、spyOn、fake timers、hoisted、waitFor | advanced-vi |
| 環境 | テスト環境:node、jsdom、happy-dom、カスタム | advanced-environments |
| 型テスト | expectTypeOf と assertType による型レベルのテスト | advanced-type-testing |
| プロジェクト | マルチプロジェクトのワークスペース、プロジェクトごとの異なる設定 | advanced-projects |
コメント
Markdown 対応