JavaScript:
Escrevendo testes
Como fazer:
Abordagem Nativa (usando Jest)
Jest é um framework de testes popular que fornece uma API amigável para escrever testes de unidade em JavaScript. Ele requer configuração mínima e vem com recursos como funções de simulação, temporizadores e teste de snapshots.
- Instalação:
npm install --save-dev jest
- Escrevendo um teste simples:
Crie um arquivo chamado sum.test.js
:
const sum = require('./sum'); // Assuma que essa função simplesmente adiciona dois números
test('soma 1 + 2 para igualar 3', () => {
expect(sum(1, 2)).toBe(3);
});
- Executando o seu teste:
npx jest
Saída de Exemplo:
PASS ./sum.test.js
✓ soma 1 + 2 para igualar 3 (5ms)
Testando Código Assíncrono
Jest facilita o teste de promessas e a sintaxe async/await:
// asyncSum.js
async function asyncSum(a, b) {
return Promise.resolve(a + b);
}
// asyncSum.test.js
test('adição assíncrona funciona', async () => {
await expect(asyncSum(1, 2)).resolves.toBe(3);
});
Usando Bibliotecas de Terceiros (Mocha & Chai)
Mocha é outro framework de testes popular, frequentemente usado com a biblioteca de afirmação Chai para testes mais expressivos.
- Instalação:
npm install --save-dev mocha chai
- Escrevendo um teste com Mocha e Chai:
Crie calculate.test.js
:
const chai = require('chai');
const expect = chai.expect;
const calculate = require('./calculate'); // Um módulo de cálculo simples
describe('Calculate', function() {
it('deve somar dois valores', function() {
expect(calculate.sum(5, 2)).to.equal(7);
});
});
- Executando seus testes com Mocha:
Adicione um script no seu package.json
:
"scripts": {
"test": "mocha"
}
Em seguida, execute:
npm test
Saída de Exemplo:
Calculate
✓ deve somar dois valores
1 passing (8ms)
Estes exemplos ilustram a escrita básica e execução de testes em JavaScript. Adotar um framework de testes como Jest ou Mocha com Chai pode fornecer uma base sólida para testes robustos de aplicação, ajudando a assegurar que seu código funcione conforme pretendido através de atualizações e refatorações.