Jest 入門 ~ テストケース作成の第一歩 ~

Jest

Jestは、JavaScript のテストフレームワークとして広く使用されており、単体テストの作成や実行を簡単に行うことができます。

この記事では、Jest を使用してテストケースを作成する手順と、テストファイルの基本的な構造について解説します。

1.単体テストの書き方と基本構造の理解

Jest を使用して単体テストを書く際には、以下の基本構造を理解することが重要です。

describe/it ブロック:

describe/it ブロックは、テストスイートとテストケースを定義するためのものです。describe ブロックは、テストケースのグループを定義し、it ブロックは個々のテストケースを定義します。

describe('グループ1', () => {
  it('テストケース1', () => {
    // テストの実行と検証
  });
});

expect:

Expectは、テストケースで期待される結果を検証するために使用されます。これらは、テストの成功または失敗を判定します。

expect(result).toBe(4);

2.テストケースの作成と実行の手順

Jest を使用してテストケースを作成し、実行する手順は以下の通りです。

1.テスト対象のファイルの作成

まずは、テストの対象となるファイルを作成しましょう。

今回は、足し算と引き算を行うメソッドを持った、calculator クラスを作成します。

// calculator.js
class Calculator {
  // コンストラクタ
  constructor() {
    // 何もしない
  }

  // 2つの数値の和を計算するメソッド
  plus(num1, num2) {
    return num1 + num2;
  }

  // 2つの数値の差を計算するメソッド
  minus(num1, num2) {
    return num1 - num2;
  }
}

// Calculatorクラスをエクスポート
module.exports = Calculator;

2.テストファイルの作成:

まず、テスト対象のコードと同じディレクトリ内に、テストファイルを作成します。テストファイルは、.test.js もしくは .spec.js の拡張子を持つことが一般的です。

Describe/It ブロックを使って、テストケースの枠組みだけを作成してみます。

// calculator.test.js
describe("Calculator クラス", () => {
  describe("plus メソッド", () => {
    it("1 + 1 = 2 となること", () => {});
    it("1 + (-3) = -2 となること", () => {});
  });

  describe("minus メソッド", () => {
    it("3 - 1 = 2 となること", () => {});
    it("1 - (-3) = 4 となること", () => {});
  });
});

3.テストケースの作成:

では、先程作成したファイルに、実際にテストコードを書いていきましょう。

必要に応じて、expect を使用して期待される結果を検証します。

// calculator.test.js
const Calculator = require("./calculator");

describe("Calculator クラス", () => {
describe("plus メソッド", () => {
it("1 + 1 = 2 となること", () => {
const calc = new Calculator();

expect(calc.plus(1, 2)).toBe(3);
});

it("1 + (-3) = -2 となること", () => {
const calc = new Calculator();

expect(calc.plus(1, -3)).toBe(-2);
});
});

describe("minus メソッド", () => {
it("3 - 1 = 2 となること", () => {
const calc = new Calculator();

expect(calc.minus(3, 1)).toBe(2);
});

it("1 - (-3) = 4 となること", () => {
const calc = new Calculator();

expect(calc.minus(1, -3)).toBe(4);
});
});
});

3.テストの実行:

コマンドラインで、テストファイルがあるディレクトリに移動し、以下のコマンドを実行してテストを実行します。

npm test

4.テスト結果の確認:

テストが実行されると、コンソールにテスト結果が表示されます。成功したテストケースは緑色で表示され、失敗したテストケースは赤色で表示されます。

先程の calculator.test.js を実行した結果は、以下のようになるかと思います。

> my_project@1.0.0 test
> jest

 PASS  src/calculator.test.js
  Calculator クラス
    plus メソッド                                                                                                  
      √ 1 + 1 = 2 となること (6 ms)
      √ 1 + (-3) = -2 となること (1 ms)
    minus メソッド
      √ 3 - 1 = 2 となること (1 ms)
      √ 1 - (-3) = 4 となること (1 ms)

Test Suites: 1 passed, 1 total
Tests:       4 passed, 4 total
Snapshots:   0 total
Time:        1.072 s
Ran all test suites

コメント

タイトルとURLをコピーしました