Jestのドキュメントを読む
はじめに
Jestのドキュメントを読んでまとめていきます。
https://jestjs.io/ja/docs/getting-started
Jestとは
JestはJavaScriptのコードをテストするためのフレームワークで、そのシンプルさと直感的なAPIが開発者に評価されています。
TypeScriptにも対応しており、TypeScriptで書かれたコードのテストも手軽に行うことができます。厳密な型チェックが求められるプロジェクトでも、Jestを利用したテストが可能となります。
JavaScriptやTypeScriptで書かれたコードであれば、Jestでテストできるためフロントエンドのテストにおいて幅広く使われています。
導入
yarnを使用する場合は以下のコマンドでJest をインストールします。
yarn add --dev jest
TypeScriptで書かれているプロジェクトならts-jestをインストールします。
yarn add --dev ts-jest
Jestによる簡単なテストの作成
まず、2つの数値を加算するsum
という関数を定義します。この関数はsum.js
ファイルに保存します。
これがテストの対象となる関数です。
// **sum.js** function sum(a, b) { return a + b; } module.exports = sum;
テストケースの作成
次に、実際のテストケースを記述したsum.test.js
ファイルを作成します。ここでは、sum
関数に1と2を渡した結果が3になることをテストしています。
const sum = require('./sum'); test('adds 1 + 2 to equal 3', () => { expect(sum(1, 2)).toBe(3); });
test関数と構文
testはJestフレームワークの基本的な関数で、個々のテストケースを定義するために使用します。
test関数は2つの引数を取ります。
- 第一引数は文字列で、テストケースの説明を提供します。テスト結果の出力時に、何がテストされているのかを明示的にするためのものです。
- 第二引数はテストの実行内容を記述した関数です。ここには、特定の条件下でのコードの動作を確認するための一連の命令が含まれます。
test('adds 1 + 2 to equal 3', () => { expect(sum(1, 2)).toBe(3); });
ここでのexpect
関数は、ある値が特定の条件を満たしていることを期待するための関数で、toBe
はその条件(マッチャ)です。
この例では、「sum(1, 2)
の結果が3であること」を期待しています。
テストの実行設定
テストの実行設定はpackage.json
に記述します。ここでは、jest
を使用してテストを行うように指定しています。
{ "scripts": { "test": "jest" } }
テストの実行
最後に、コマンドyarn test
またはnpm test
を実行することで、テストが行われます。
テストが成功すれば、Jestはテストのパスを確認するためのメッセージを表示します。
補足
JestはJavaScriptのテストをシンプルに、そして効率的に行うことができます。
加えて、Jestはモック機能も備えており、より複雑なテストケースでも対応することが可能です。
続く…
コメント
本記事の内容は以上になります!
プログラミングスクールのご紹介 (卒業生より)
お世話になったプログラミングスクールであるRUNTEQです♪
こちらのリンクを経由すると1万円引きになります。
RUNTEQを通じて開発学習の末、受託開発企業をご紹介いただき、現在も双方とご縁があります。
もし、興味がありましたらお気軽にコメントか、TwitterのDMでお声掛けください。