Écrire des tests unitaires en TypeScript: Utilisation de Jest, Mocha, et Combinaison avec Chai et Sinon

Unit test L'ing est une partie importante du développement logiciel pour assurer l'exactitude et la fiabilité du code source. Avec TypeScript, vous pouvez écrire unit test des s facilement et de manière flexible, en utilisant des frameworks populaires comme Jest et Mocha, combinés avec des bibliothèques d'assertion comme Chai et des bibliothèques fictives comme Sinon.

Voici un guide détaillé sur l'écriture unit test de s TypeScript avec ces outils et bibliothèques :

 

Jest

Jest est un framework largement utilisé pour l'écriture unit test de s dans TypeScript et JavaScript. Il fournit une syntaxe simple et des fonctionnalités puissantes telles que la simulation, les tests d'instantanés et les rapports de couverture.

Pour commencer à écrire unit test s avec Jest, vous devez installer Jest via npm ou yarn en exécutant la commande suivante:

npm install jest --save-dev

Ensuite, vous pouvez créer des fichiers de test avec l'extension .spec.ts ou .test.ts et écrire des cas de test.

Par exemple:

// 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 est un framework de testeur flexible pour TypeScript et JavaScript. Il prend en charge une syntaxe claire et divers types de tests tels que unit test s, des tests d'intégration et des tests fonctionnels.

Pour utiliser Mocha in TypeScript, vous devez installer Mocha et Chai via npm ou yarn en exécutant la commande suivante :

npm install mocha chai --save-dev

Ensuite, vous pouvez créer des fichiers de test et écrire des cas de test.

Par exemple:

// 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 est une bibliothèque d'assertions populaire utilisée pour écrire des assertions dans unit test s. Il fournit une syntaxe claire et flexible, vous permettant d'affirmer les résultats de votre code source. Vous pouvez utiliser Chai avec Jest ou Mocha pour écrire des assertions dans vos cas de test.

Par exemple:

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 est une bibliothèque de moquerie et d'espionnage populaire utilisée pour simuler et suivre les comportements dans les cas de test. Vous pouvez utiliser Sinon avec Jest ou Mocha pour simuler et suivre les activités dans les objets et les fonctions.

Par exemple:

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

 

La combinaison Jest de ou Mocha avec Chai et Sinon vous permet de créer unit test des s puissants et flexibles dans TypeScript. En utilisant les méthodes et les fonctionnalités de Jest, Mocha, Chai et Sinon, vous pouvez garantir l'exactitude et la fiabilité de votre code source pendant le processus de développement logiciel.