Kitba tat-Testijiet ta' l-Unità fi TypeScript: L-użu ta Jest ', Mocha, u Tgħaqqad ma Chai ' u Sinon

Unit test ing hija parti importanti mill-iżvilupp tas-softwer biex tiżgura l-eżattezza u l-affidabbiltà tal-kodiċi tas-sors. Bil TypeScript, tista 'tikteb unit test s faċilment u b'mod flessibbli, billi tuża oqfsa popolari bħal Jest u Mocha, flimkien ma' libreriji ta 'asserzjoni bħal Chai u libreriji mocking bħal Sinon.

Hawnhekk hawn gwida dettaljata dwar il-kitba unit test b'dawn TypeScript l-għodod u l-libreriji:

 

Jest

Jest huwa qafas użat ħafna għall-kitba unit test s fi TypeScript u JavaScript. Jipprovdi sintassi sempliċi u karatteristiċi qawwija bħal mocking, ittestjar snapshot, u rapporti ta 'kopertura.

Biex tibda tikteb unit test s b' Jest, trid tinstalla Jest permezz ta' npm jew ħajt billi tħaddem il-kmand li ġej:

npm install jest --save-dev

Imbagħad, tista 'toħloq fajls tat-test bl-estensjoni .spec.ts jew .test.ts u tikteb każijiet tat-test.

Pereżempju:

// 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 huwa qafas ta 'test runner flessibbli għal TypeScript u JavaScript. Jappoġġja sintassi ċara u diversi tipi ta 'testijiet bħal unit test s, testijiet ta' integrazzjoni, u testijiet funzjonali.

Biex tuża Mocha f' TypeScript, għandek bżonn tinstalla Mocha u Chai permezz ta' npm jew ħjut billi tħaddem il-kmand li ġej:

npm install mocha chai --save-dev

Imbagħad, tista 'toħloq fajls tat-test u tikteb każijiet tat-test.

Pereżempju:

// 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 hija librerija ta' asserzjonijiet popolari użata għall-kitba ta' asserzjonijiet f unit test 's. Jipprovdi sintassi ċara u flessibbli, li tippermettilek tasserixxi r-riżultati tal-kodiċi tas-sors tiegħek. Tista 'tuża Chai ma' Jest jew Mocha biex tikteb affermazzjonijiet fil-każijiet tat-test tiegħek.

Pereżempju:

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 hija librerija popolari mocking u spying użata biex mock u track imgieba fil-każijiet tat-test. Tista 'tuża Sinon ma' Jest jew Mocha biex mock u track attivitajiet f'oġġetti u funzjonijiet.

Pereżempju:

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();  
});  

 

Jikkombinaw Jest jew Mocha ma Chai u Sinon jippermettilek li tibni unit test s qawwija u flessibbli fil TypeScript. Billi tuża l-metodi u l-funzjonalitajiet ta Jest ’, Mocha, Chai, u Sinon, tista’ tiżgura l-eżattezza u l-affidabbiltà tal-kodiċi tas-sors tiegħek matul il-proċess ta’ żvilupp tas-softwer.