はじめに
2023年12月5日にVitest v1.0.0 がリリースされました。
それまで自分は0系を利用していたので、こちらのガイドを参考にマイグレーションしてみます。
開発環境
マイグレーション前の開発環境は以下の通りです。
- Windows11
- VSCode
- TypeScript 4.9.5
- React 18.2.0
- yarn 1.22.19
- Node.js 20.5.0
- Vite 4.1.5
- Vitest 0.34.6
- @testing-library/react 14.0.0
- jsdom 22.1.0
また、Vitest 及び React Testing Library を利用した自動テストが正常に動作していることをマイグレーション前に確認しています。
マイグレーション
Vitest の1系を利用する前提条件は以下の通りです(2023年12月時点)。
- Node.js 18以上
- Vite 5.0
-
@vitest/*
サブパッケージが Vitest 1.0
そのため、条件を満たすために Vite と Vitest のバージョンを上げます。
今回は yarn を使っているので、yarn upgrade
でバージョンを上げます。
また、それぞれバージョンを上げた後、自動テストが正常に動作するか確認します。
yarn upgrade vite@5.0.10
yarn upgrade vitest@1.0.4
自分が書いていたテストの範囲内ではこれだけで Vitest 1系が利用できるようになりました。
ただ、以下の内容がテストに含まれている場合、それぞれ対応が必要になりそうです。
- スナップショットテスト(
toMatchSnapshot
)のときの引用の記載方法 - テストのオプション設定
- カバレッジの設定
- モックの型
- タイマーのモック
まとめ
そこまで自分が複雑なテストを書いていなかったということもありますが、思ったよりずっと簡単にマイグレーションできました。
1系になったので、今までより安心して利用できますね。