Criar um pipeline de validação contínua
Embora você possa executar testes de carga e experimentos de caos manualmente, recomendamos que você use um processo automatizado. Para fazer isso, integre ambos os testes de validação em seus pipelines de integração contínua e entrega contínua (CI/CD) e compare automaticamente os resultados com linhas de base predefinidas.
Nesta unidade, você aprenderá a usar pipelines de CI/CD para automatizar seu processo de validação contínua.
Vantagens de automatizar testes de validação
Esta técnica reduz a barreira de entrada e o esforço associado a esta atividade. Os desenvolvedores e o pessoal de operações podem usá-lo como parte de cada versão ou alteração importante, o que melhora a qualidade e a consistência das execuções de teste.
A execução simultânea de testes de carga e experimentos de caos ajuda a observar o comportamento do sistema em um ambiente que simula o tráfego do mundo real. O objetivo é prever falhas e não quebrar o sistema.
Ao executar os testes de carga, considere ajustar as linhas de base para determinadas situações. Por exemplo, você pode aceitar um tempo de resposta maior quando um determinado componente falha, mas ainda espera que o teste seja aprovado.
Configurar os pipelines automatizados
Para criar um pipeline de CI/CD, você pode usar o Azure Pipelines, as Ações do GitHub ou a ferramenta CI/CD de sua escolha. Esta imagem mostra os estágios de ponta a ponta de um pipeline no Azure DevOps.
No pipeline, defina os serviços Azure Load Testing e Azure Chaos Studio como infraestrutura como código (IaC) usando uma ferramenta como modelos do Azure Resource Manager, Bíceps ou Terraform. O Teste de Carga do Azure fornece tarefas primárias para que os Pipelines do Azure e as Ações do GitHub interajam com o serviço de teste de carga e criem e orquestram testes.
Para visualizar corretamente o impacto das falhas injetadas, certifique-se de que o teste de carga começa antes que as falhas sejam injetadas. Continue a executar o teste por um tempo depois que o experimento de caos for concluído.
Analise os testes de carga com falha para ver se a linha de base ainda é precisa ou se precisa ser ajustada.
Demonstração: Validação contínua automatizada
Este vídeo mostra como integrar o Azure Load Testing e o Azure Chaos Studio em um pipeline de CI/CD do Azure.