O documento discute testes em aplicações Angulares com Typescript, comparando e contrastando Testes de Unidade (Unit Testing), Test-Driven Development (TDD) e Behavior-Driven Development (BDD). Explica como escrever testes unitários isolados para componentes Angulares usando suites e testes com Mocha/Chai e recomenda boas práticas de organização e estruturação de testes.
7. 1. Escreva seu teste
2. Rode os testes e veja se houveram falhas
3. Escreva o código
4. Rode os testes
5. Refatore o código
6. Começe novamente do 1
TDD
11. BDD
• Pode e deve ser usado com TDD
• Mudanças menos dolorosas
• Foco no comportamento
12. suite('Contador', () => {
test('tick aumenta contador em 1', () => {
let counter = new Counter();
counter.tick();
assert.equal(counter.count, 1);
});
});
TDD
13. describe('Contador', () => {
it('aumenta o contador em 1 após o tick', () => {
let counter = new Counter();
let expectedCount = counter.count + 1;
counter.tick();
assert.equal(counter.count, expectedCount);
});
});
BDD