[TypeScript]Jest導入メモ


jestのインストール

npm i jest @types/jest ts-jest -D

package.jsonのscriptsを変更する

package.json
{
    "scripts": {
        "test": "jest"
    },
}

src/tests/ 配下に xxx.test.ts を作成する

sum.test.ts
test('ok sum', () => {
    expect(sum(1, 2)).toBe(3);
});

test('ok sum multiple', () => {
    expect(sum(1, 2, 3)).toBe(6);
});

test('ng sum', () => {
    expect(sum(1, 2, 3)).toBe(10);
});

const sum = (...numbers: number[]) => {
    return numbers.reduce((previousValue, currentValue) => previousValue + currentValue)
};

テスト実行

npm t

実行結果
エラーケースがあると以下の様に出力してくれる

 FAIL  src/tests/sum.test.ts (16.136s)
   ng sum

    expect(received).toBe(expected) // Object.is equality

    Expected: 10
    Received: 6

       8 | 
       9 | test('ng sum', () => {
    > 10 |     expect(sum(1, 2, 3)).toBe(10);
         |                          ^
      11 | });
      12 | 
      13 | const sum = (...numbers: number[]) => {

      at Object.<anonymous>.test (src/tests/sum.test.ts:10:26)

参考ドキュメント