Yanonoblog!

こつこつと

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です♪

https://runteq.jp/r/ohtFwbjW

こちらのリンクを経由すると1万円引きになります。

RUNTEQを通じて開発学習の末、受託開発企業をご紹介いただき、現在も双方とご縁があります。

もし、興味がありましたらお気軽にコメントか、TwitterのDMでお声掛けください。

https://twitter.com/outputky