はじめてのテスト
ターミナルから npm
コマンドでVitestをインストールします。
npm i -D vitest
または
npm install --save-dev vitest
いずれかのコマンドを実行することでVitestがインストールされます。
ここでインストールしたVitestは、このプロジェクトの開発用の依存関係として追加されます。
つまり、これ以降このプロジェクトは npm install
コマンドを実行することでVitestを導入できるようになります。
インストールしたVitestは、npx vitest
コマンドを使用することで実行できます。
npx vitest
しかし、まだテストが1件も存在しないのでこのコマンドは失敗します。
$ npx vitest
include: **/*.{test,spec}.?(c|m)[jt]s?(x)
exclude: **/node_modules/**, **/dist/**, **/cypress/**, **/.{idea,git,cache,output,temp}/**, **/{karma,rollup,webpack,vite,vitest,jest,ava,babel,nyc,cypress,tsup,build}.config.*
watch exclude: **/node_modules/**, **/dist/**
No test files found, exiting with code 1
実際にテストを作成し、実行していきましょう。
次のファイルを作成します。
// hello.test.js
import { expect, test } from "vitest";
test("1と2の合計は3です", () => {
expect(1 + 2).toBe(3);
});
この作成した hello.test.js
は、npx vitest
コマンドを実行するときにテストとして実行されるようになります。
$ npx vitest
✓ hello.test.js (1)
✓ 1と2の合計は3です
Test Files 1 passed (1)
Tests 1 passed (1)
Start at 16:38:04
Duration 264ms (transform 20ms, setup 0ms, collect 9ms, tests 2ms, environment 0ms, prepare 68ms)
PASS Waiting for file changes...
press h to show help, press q to quit
問題なく実行できましたか?
実行終了するには、キーボードの q
を押します。
✓ hello.test.js (1)
画面に表示されたこの部分は「テスト hello.test.js
が実行され、そのテストは合格しました ✅」ということを意味しています。
このようにしてVitestは簡単にテストを行うことができます。
はじめてのテストのコードの説明
テストのコードについてより詳しく説明します。
はじめてのテストのコード:
// hello.test.js
import { expect, test } from "vitest";
test("1と2の合計は3です", () => {
expect(1 + 2).toBe(3);
});
このコードは、「1と2の合計は3です」というテストを意味します。
式 1 + 2
が、 3
と等しいことを検証するテストです。
Vitestを使用するため、最初の行は import
文によって vitest
を指定しています。
import { expect, test } from "vitest";
そして、下記のVitestの機能が使われています。
test()
関数
テストを宣言するための関数です。
- 第一引数には、このテストの説明を人間が読める形式で記述します
- 第二引数には、テストの本体を記述します
expect()
関数
引数に与えた値を検証します。
expect(<検査される値>).toBe(<期待する値>)
「検査される値」と「期待する値」の同一性を検証します。
このコードは、Vitestの基本的な機能を確認するための極めて単純なテストですが、テスト環境自体の検証を行うことでもあります。 テスト環境の検証は、テストを行う上で最初に確認しておく重要なポイントです。