Skip to content

ADR-0002: Vitestの採用

ステータス

承認済み

コンテキスト

TypeScriptプロジェクトにおいてテスト駆動開発を実践するため、適切なテスティングフレームワークを選定する必要がある。

選定にあたっての要件: - TypeScriptとの親和性 - 高速なテスト実行 - 使いやすいAPI - ウォッチモードのサポート

決定

Vitestをテスティングフレームワークとして採用する。

理由

  • 高速: Viteベースで動作し、高速なテスト実行が可能
  • TypeScript対応: TypeScriptを標準でサポートし、追加設定が最小限
  • Jest互換: Jest互換のAPIを提供し、学習コストが低い
  • ウォッチモード: ファイル変更を検知して自動的にテストを再実行
  • ESM対応: ES Modulesを標準でサポート

結果

良い結果

  • テスト実行速度の向上
  • 開発体験の向上
  • 設定の簡素化

悪い結果

  • Jestからの移行が必要な場合がある
  • 比較的新しいツールのため、一部のエコシステムが未成熟な可能性