Chegou a hora de testar todas as camadas de uma aplicação JavaScript.
De uma simples ferramenta de linha de comando, à uma aplicação Back-end que expõe uma API e uma aplicação Front-end.
Se você trabalha com desenvolvimento de software ou possui interesse em aprender sobre testes, buscando entregar um produto com maior qualidade e confiabilidade, então sim, esse livro é para você.
Ao final de todo o processo você vai saber como aplicar nos seus projetos de forma eficiente os mais variados tipos testes: de unidade, de integração, de carga, de regressão visual e de ponta-a-ponta.
Todo o material envolvido tem como intuito fundamentar uma base sólida nos mais amplos cenários de testes possíveis com diversos exercícios, desafios e projetos práticos ao longo de sua jornada.
Começamos nossa jornada pelos fundamentos e pelas teorias de testes. Antes de qualquer código é necessário saber como as ferramentas funcionam e como começar a nos acostumar com uma cultura de testes.
Após visitar os fundamentos necessários, vamos entender os projetos que serão abordados e aplicar testes unitários de forma prática nas diversas camadas de uma ferramenta de linha de comando (CLI).
Depois de algum contato com as ferramentas, é hora de aplicar diversos testes em uma API feita em Node com Express. Aplicaremos testes unitários, de integração e também testes de carga.
Testar componentes visuais pode ser uma tarefa árdua. Nessa etapa, vamos aplicar testes unitários, de integração e regressão visual nos componentes e nas páginas de nossa aplicação.
Para finalizar, vamos aplicar testes E2E para que possamos testar a aplicação de ponta-a-ponta e garantir que nossos principais fluxos estão funcionando ao simular uma pessoa real interagindo com nosso software.
Gabriel Ramos é pintor de pixel (ou desenvolvedor, como algumas pessoas preferem chamar) e instrutor em projetos relacionados ao ensino da tecnologia.
Já passou por empresas de diversos tamanhos e segmentos: de e-commerces e companhias mais consolidadas à startups unicórnios com produtos emergentes.
Na grande maioria de suas experiências teve contato com os mais variados assuntos que envolvem o ecossistema JavaScript, desde aplicações front-end à ferramentas e back-end.