Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Aplicando TestContainers para garantir qualidad...

Aplicando TestContainers para garantir qualidade de Microsserviços

Com TestContainers podemos simular ambientes (banco de dados, mensageria, etc.) similares a desenvolvimento e homologação, mas só sendo utilizado em momento de execução, e depois finalizar os containers no final do ciclo de vida de nossos testes de integração, obtendo diversos ganhos expressivos em diversos pontos que serão apresentados, inclusive em pipelines de CI/CD.

Guilherme Rogatto

January 24, 2022
Tweet

More Decks by Guilherme Rogatto

Other Decks in Technology

Transcript

  1. Quem sou eu? • Formado em Engenharia de Computação. •

    Consultor de Qualidade de Software. • Instrutor de Automação de Testes.
  2. Agenda • Infraestrutura e Arquitetura • Automação de testes microsserviços/APIs

    atualmente • Containers • Mostrando o código • Estratégias de espera • Reporting • Pipelines
  3. Automação de testes microsserviços/APIs atualmente 1. Flask tests 2. Dependência

    de ambientes (bancos de dados, cloud, gateway, vpns e mais) 3. Novos códigos entrando a todo momento no ambiente 4. Não podemos colocar esse projeto em uma pipeline de entrega contínua
  4. Containers Com o uso do containers simplificamos diversas camadas do

    sistema operacional, temos uma rápida execução e diversas imagens oficiais para a utilização, como por exemplo: • Mysql • PostgreSQL • Kafka
  5. Pipelines Utilizando TestContainers conseguimos realmente adicionar nossos testes na camada

    de integração contínua, assim podemos parar o pipeline caso algum teste não execute como esperado ou até mesmo ter insights de como está a qualidade por trás desse novo deploy da nova versão do microserviço O teste inicial economiza tempo e dinheiro