Open2
vitest
なぜVitestか
- vite nativeなテストフレームワーク
- テスト中にviteのdev serverを利用してファイルをtransformしている。これによりtransformの複雑さを吸収してシンプルなランナーを実現
- jestと互換性のあるAPIを提供
- ワーカースレッドをできる限り並列に動かしてパフォーマンスの向上を図っている
- 依存関係をなるべく少なくすることで軽量にしている
- viteを使ってないプロジェクトでも選択肢に入る
Jestとの比較
Viteを使っている場合
- Viteがさまざまなweb tool(e.g., typescript, JSX, 各種UIフレームワーク)を提供している現状、viteと一緒にjestを使うと色々二重にツールが提供されている状態になり、不必要に複雑になる
Viteを使ってない場合(e.g., rollup, esbuild)
- Vitestは実行が高速。かつ、ViteのHMRを使用したウォッチモードがデフォルトでありDXが向上する。