での単体テストの作成 TypeScript:、 、 の使用 Jest および と Mocha の組み合わせ Chai Sinon

Unit test ソース コードの正確性と信頼性を確保するためのソフトウェア開発の重要な部分です。 を使用すると、 や などの一般的なフレームワークを使用し、 のようなアサーション ライブラリ や のようなモック ライブラリ と組み合わせて、 を簡単かつ柔軟に TypeScript 作成できます 。 unit test Jest Mocha Chai Sinon

これらのツールとライブラリを使用し unit test て を 書き込むための詳細なガイドは次のとおりです。 TypeScript

 

Jest

Jest unit test は、JavaScript を記述する ために広く使用されているフレームワークです TypeScript。 シンプルな構文と、モック、スナップショット テスト、カバレッジ レポートなどの強力な機能を提供します。

unit test で の 書き込みを開始するには、 次のコマンドを実行して npm または Yarn 経由で Jest インストールする必要があります。 Jest

npm install jest --save-dev

その後、拡張子 .spec.ts または .test.ts を持つテスト ファイルを作成し、テスト ケースを作成できます。

例えば:

// math.ts  
export function add(a: number, b: number): number {  
  return a + b;  
}  
  
// math.spec.ts  
import { add } from './math';  
  
test('add function adds two numbers correctly',() => {  
  expect(add(2, 3)).toBe(5);  
});  

 

Mocha

Mocha TypeScript JavaScript 用の柔軟なテスト ランナー フレームワークです。 明確な構文と、 unit test 統合テスト、機能テストなどのさまざまなタイプのテストをサポートしています。

Mocha で 使用するには、 次のコマンドを実行して npm または Yarn 経由で インストール TypeScript する必要があります。 Mocha Chai

npm install mocha chai --save-dev

その後、テスト ファイルを作成し、テスト ケースを作成できます。

例えば:

// math.ts  
export function add(a: number, b: number): number {  
  return a + b;  
}  
  
// math.spec.ts  
import { expect } from 'chai';  
import { add } from './math';  
  
describe('add function',() => {  
  it('should add two numbers correctly',() => {  
    expect(add(2, 3)).to.equal(5);  
  });  
});  

 

Chai

Chai は、 でアサーションを記述するために使用される人気のあるアサーション ライブラリです unit test。 明確で柔軟な構文を提供し、ソース コードの結果をアサートできるようにします。 または のいずれか Chai と併用して、 テスト ケースにアサーションを記述すること ができます。 Jest Mocha

例えば:

import { expect } from 'chai';  
import { add } from './math';  
  
it('add function should add two numbers correctly',() => {  
  expect(add(2, 3)).to.equal(5);  
});  

 

Sinon

Sinon は、テスト ケースの動作をモックして追跡するために使用される、人気のあるモックおよびスパイ ライブラリです。 またはのいずれか Sinon と組み合わせて 使用​​すると 、オブジェクトや関数のアクティビティをモックして追跡できます。 Jest Mocha

例えば:

import { expect } from 'chai';  
import { add } from './math';  
import sinon from 'sinon';  
  
it('add function should call console.log with the correct result',() => {  
  const consoleSpy = sinon.spy(console, 'log');  
  add(2, 3);  
  expect(consoleSpy.calledWith(5)).to.be.true;  
  consoleSpy.restore();  
});  

 

Jest または と Mocha を 組み合わせる Chai と、強力で柔軟な を で Sinon 構築できます 。 、 、および のメソッドと機能を使用すると 、ソフトウェア開発プロセス中にソース コードの正確さと信頼性を確保できます。 unit test TypeScript Jest Mocha Chai Sinon