Open2

vitest

nakaakistnakaakist

https://vitest.dev/guide/why.html

なぜVitestか

  • vite nativeなテストフレームワーク
  • テスト中にviteのdev serverを利用してファイルをtransformしている。これによりtransformの複雑さを吸収してシンプルなランナーを実現
  • jestと互換性のあるAPIを提供
  • ワーカースレッドをできる限り並列に動かしてパフォーマンスの向上を図っている
  • 依存関係をなるべく少なくすることで軽量にしている
  • viteを使ってないプロジェクトでも選択肢に入る
nakaakistnakaakist

https://vitest.dev/guide/comparisons.html#jest

Jestとの比較

Viteを使っている場合

  • Viteがさまざまなweb tool(e.g., typescript, JSX, 各種UIフレームワーク)を提供している現状、viteと一緒にjestを使うと色々二重にツールが提供されている状態になり、不必要に複雑になる

Viteを使ってない場合(e.g., rollup, esbuild)

  • Vitestは実行が高速。かつ、ViteのHMRを使用したウォッチモードがデフォルトでありDXが向上する。