A pirâmide de testes é composta por 3 fases, a base, onde são realizados os testes unitários, o meio que é onde realizamos os testes de integração e o topo, onde são realizados os testes E2E.
Testes unitários: realizados na unidade, no código e geralmente são feitos pelos desenvolvedores.
Testes de integração: a o teste onde é verificado, como o próprio nome diz, a integração entre os módulos desenvolvidos para verificar que estão se intergando corretamente. Esses testes também são realizados pelos desenvolvedores, podendo ser também feito por um QA.
Testes E2E: é um método de teste utilizado para testar um fluxo da aplicação desde o começo até o fim. Seu intuito é replicar cenários reais feitos pelos usuários com a intenção de validar que o sistema esteja funcionando como o esperado. Este tipo de testes é realizado pelo QA.