Eenheidstests schrijven in TypeScript: Jest, Mocha, en combineren met Chai en Sinon

Unit test ing is een belangrijk onderdeel van softwareontwikkeling om de nauwkeurigheid en betrouwbaarheid van de broncode te waarborgen. Met TypeScript kun je unit test gemakkelijk en flexibel s schrijven, gebruikmakend van populaire frameworks zoals Jest en Mocha, gecombineerd met assertion-bibliotheken zoals Chai en spotbibliotheken zoals Sinon.

Hier is een gedetailleerde gids over het schrijven unit test van s in TypeScript met deze tools en bibliotheken:

 

Jest

Jest is een veel gebruikt raamwerk voor het schrijven unit test van s in TypeScript en JavaScript. Het biedt een eenvoudige syntaxis en krachtige functies zoals mocking, snapshot-testen en dekkingsrapporten.

Om te beginnen met het schrijven unit test van s Jest, moet u installeren Jest via npm of garen door de volgende opdracht uit te voeren:

npm install jest --save-dev

Vervolgens kunt u testbestanden maken met de extensie .spec.ts of .test.ts en testcases schrijven.

Bijvoorbeeld:

// 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 is een flexibel testrunner-framework voor TypeScript en JavaScript. Het ondersteunt een duidelijke syntaxis en verschillende soorten tests, zoals unit test s, integratietests en functionele tests.

Mocha Om in te gebruiken TypeScript, moet u installeren Mocha en Chai via npm of garen door de volgende opdracht uit te voeren:

npm install mocha chai --save-dev

Vervolgens kunt u testbestanden maken en testgevallen schrijven.

Bijvoorbeeld:

// 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 is een populaire beweringenbibliotheek die wordt gebruikt voor het schrijven van beweringen in unit test s. Het biedt een duidelijke en flexibele syntaxis, waardoor u de resultaten van uw broncode kunt bevestigen. U kunt Chai met Jest of gebruiken Mocha om beweringen in uw testcases te schrijven.

Bijvoorbeeld:

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 is een populaire spot- en spionagebibliotheek die wordt gebruikt om gedrag in testcases te bespotten en te volgen. Sinon U kunt met Jest of gebruiken Mocha om activiteiten in objecten en functies te bespotten en te volgen.

Bijvoorbeeld:

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 Door of te combineren Mocha met Chai en Sinon kunt u krachtige en flexibele unit test s inbouwen TypeScript. Door de methoden en functionaliteiten van Jest, Mocha, Chai, en te gebruiken Sinon, kunt u de nauwkeurigheid en betrouwbaarheid van uw broncode tijdens het softwareontwikkelingsproces waarborgen.