/devtalks_node_integration_testing

Integration testing with NodeJS, presentation for Devtalks Grupo RV

Primary LanguageTypeScriptMIT LicenseMIT

Devtalks Testes de Integração

Introdução

Mesmo em um software bem arquitetado, testando duas unidades que interagem entre si separadamente, e concluindo que ambas estão funcionando como esperado. Ainda assim, é possível que as duas unidades não funcionem bem em conjunto. Com isso, o principal objetivo dos testes de integração é garantir que duas ou mais unidades funcionem juntas.

  • Testa grupos de unidades integradas para criar um sistema ou um subsistema;
  • Geralmente são os testes mais lentos, pois possuem uma quantidade maior de componentes sendo testados de uma só vez, onde muitas vezes há persistência de dados e comunicação assíncrona;
  • Os testes se concentram nas interfaces de comunicação entre unidades;

Integration vs Unit Test

Feature que foi testada

  • API REST para listar as postagens vindas de JSON Placeholder, expor as postagens de forma pública.
    • GET /posts - application/json

Como foi testada a feature/componente RemoteFetchPosts

  • 1ª - Mockando o módulo axios;
  • 2ª - Mockando o componente de HttpClient (Injeção de dependência);
  • 3ª - Interceptando as requisições HTTP utilizando Nock;

Referências


By Victor B. Fiamoncini ☕️