2. pen4education
O Que é TDD
Test Driven Development (TDD) ou em português Desenvolvimento guiado
por testes é uma técnica de desenvolvimento de software que baseia em um ciclo
curto de repetições: Primeiramente o desenvolvedor escreve um caso de teste
automatizado que define uma melhoria desejada ou uma nova funcionalidade.
Então, é produzido código que possa ser validado pelo teste para posteriormente o
código ser refatorado para um código sob padrões aceitáveis. Kent Beck.
https://pt.wikipedia.org/wiki/Test_Driven_Development
3. pen4education
Passos Básicos do TDD
1 - Passo
Escreve um teste que falha(sim vou leu falha).
2 - Passo
Escreve a implementação mínima que faz ele passar.
3 - Passo
Refatoração ou aprimoramento.
8. pen4education
Mocha JS
O Mocha é um teste runner de JavaScript rica em
recursos que é executada em Node.js e/ou navegador,
tornando os testes assíncronos simples e divertidos. Os
testes de Mocha são executados em série, permitindo
relatórios flexíveis e precisos, deixando simple
descritivos seus testes.
9. pen4education
Chai JS
Chai é uma biblioteca asserção para BDD / TDD para o
NodeJS e ou navegador que pode ser usado com
qualquer framework de teste javascript.
10. pen4education
BDD
Behavior Driven Development (BDD ou ainda uma tradução
Desenvolvimento Guiado por Comportamento) é uma técnica de
desenvolvimento Ágil que encoraja colaboração entre desenvolvedores, setores de
qualidade e pessoas não-técnicas ou de negócios num projeto de software. Foi
originalmente concebido em 2003, por Dan North como uma resposta à Test
Driven Development (Desenvolvimento Guiado por Testes), e tem se expandido
bastante nos últimos anos.
11. pen4education
SinonJS e SuperAgent
O SuperAgent é uma biblioteca de request HTTP do lado do cliente e ou
módulo Node.js de api simples, exibe muitos recursos de alto nível do protocolo
HTTP.
O SinonJS é uma lib especialista em criar, spys, stubs e mocks para
JavaScript. Roda em com todas libs de assertion.
12. pen4education
● TDD ajuda sim a criar sistemas simples de manter.
● BDD Simplificar o TDD e documentar
● BDD Deixa a comunicação mais simples entre equipe e interessados.
● Pode Ajudar e dar semântica a sistemas legados.
● É Divertido e não é muito de começo simples.
Conclusão