Criar um pipeline de validação contínua

Concluído

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.

Diagrama que mostra um pipeline de amostra que tem um teste de carga e um experimento de caos.

  1. 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.

    Diagrama que mostra o pipeline tendo caos integrado e testes de carga.

  2. 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.

    Captura de tela do portal do Azure que mostra uma tabela de critérios de teste de exemplo.

  3. 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.

Verificação de conhecimento

1.

Como um teste de carga e um experimento de caos devem ser executados e orquestrados?

2.

O que precisa ser feito após um teste de carga reprovado?