INICIANDO COM TESTES
LEANDRO NISHIJIMA
DESENVOLVEDOR
QUAL IMPORTÂNCIA DE TESTES
AUTOMATIZADOS?
- Auxilia em refactorings
- Documentação!
- Ajuda no desenvolvimento do design do código
- Testes de regressão!
- TDD!
- ...
É DIFÍCIL ESCOLHER QUAL FERRAMENTA UTILIZAR
PARA ESCREVER TESTES EM JAVASCRIPT?
https://mochajs.org/
https://github.com/mochajs/mocha
Uso
Hooks
Testes em código assíncrono (callback)
Testes em código assíncrono (promise)
http://chaijs.com/
https://github.com/chaijs/chai
Interfaces
Possui alguns problemas quando usado com Internet Explorer
Não recomendo
Minha escolha pessoal atualmente e do time
Recomendo
Muitas opções de assert
http://chaijs.com/api/bdd/
http://sinonjs.org/
https://github.com/sinonjs/sinon
Pattern
“We can say, the basic use pattern with Sinon is to replace the problematic dependency with a test-double.”
Ex:
Chamadas para banco de dados
Requisições para api de terceiros
Dependência de data atual
Etc.
Spies
Utilizado para obter informações sobre a chamada de determinadas funções
Mocks
“Mock object”, podem ser usados para alterar comportamentos similar ao funcionamento de stubs
Possui assert build-in
Stubs
Diferentemente de um mock, um stub substitui completamente o comportamento de uma única função faz.
E EM UM PROJETO REAL?
enzyme
localhost:8080/page/save
POST
STATUS 201
201
SETUP DO TESTE
TESTE
CONCLUSÕES
FAZER TESTES PARA AUMENTAR O
COVERAGE DE SEU PROJETO
É IMPORTANTE MANTER A
QUALIDADE DO CÓDIGO DE SEUS
TESTES NA MESMA PROPORÇÃO
QUE SEU CÓDIGO DE PRODUÇÃO
Fonte:
http://stateofjs.com/2016/testing/
QUERO ME APROFUNDAR!
done()
Muito obrigado!
br.linkedin.com/in/leandronishijima
/leandronishijima
leandro.nishijima@gmail.com

Femug #9 iniciando com testes em node js!