🐙
vite版JestことVitestでユニットテスト
Jestはもうオワコンだな
関連記事:
JestをES6化してimport/exportを使う方法
以前こんな記事を書いた。
JestがデフォルトでサポートしていないES6以降のファイルを扱う方法を記載したのだが、
あれから何も進化していない。
JestはNodeがサポートしてないからの一点張り。
Nodeは18になっても特に変化なし。
ということでテストランナーを変えることにした。
丁度VueJSでViteを使う機会があったので、
ViteベースのテストランナーVitestを使ってみる。
今回は、TypescriptではなくJavascript。
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 本題はここから ↓-------------------
Vitestをインストール
適当なディレクトリにvitestをインストールする
bash
mkdir vitest
cd vitest
npm init -f
npm i -D vite vitest
ソースコードとテストを用意する
ソースコードとテストを用意。
せっかくなのでJest公式のコードを使うようにする。
src/sum.js
export const sum = (a, b) => a + b;
test/sum.test.js
import {describe, test, expect} from "vitest";
import {sum} from "../src/sum.js";
describe("sum.js", () => {
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
})
テスト開始
bash
npx vitest
✓ tests/sum.test.js (1)
Test Files 1 passed (1)
Tests 1 passed (1)
Start at 22:53:29
Duration 2.33s (transform 1.33s, setup 0ms, collect 46ms, tests 7ms)
(・∀・) テスト通った
特に設定ファイルもなく実行できた。
もちろん今後は設定ファイルは必要だと思うが、
viteのファイルと共存できるみたいなのでそのあたりは別途掘り下げていこう
Discussion