Certificações oficiais DevOps

Treinamento escrito de DevOps

Por que você precisa de automação de testes na sua organização DevOps?


Se sua área de entrega de software ainda não tem uma boa automação de testes, provavelmente há uma desconexão entre desenvolvimento e testes. Os desenvolvedores só recebem feedback sobre a qualidade do trabalho quando já estão ocupados com outras tarefas. Geralmente deixam de perceber a relação de causa e efeito entre o código que escreveram ou deixaram de escrever e os defeitos. O esforço de mudar de contexto e voltar ao momento em que introduziram os defeitos reduz a produtividade. Como a relação entre sistemas e defeitos se torna complexa e difícil de distinguir quando o feedback chega tarde, não é realista esperar boas correções sem soluções paliativas.

Sem automação de testes, a organização DevOps precisa de mais tempo e dinheiro para entregar produtos e serviços de qualidade. Esse modelo já não permite ganhar escala em nenhuma organização de tecnologia do século XXI, independentemente da área de atuação.

Você pode automatizar os testes,
mas criar qualidade exige trabalho humano

Sua equipe DevOps deve automatizar o máximo possível de casos de teste. Os testes podem ser automatizados, mas a capacidade da equipe de pensar e criar qualidade não pode. Aproveite o tempo dos profissionais e deixe que o software faça o trabalho repetitivo que pode ser automatizado.

Princípios de DevOps para uma boa automação de testes

  • A automação de testes deve fornecer feedback rápido e antecipado sobre a qualidade do trabalho.
  • Os testes devem gerar resultados consistentes, determinísticos e repetíveis quando executados várias vezes nas mesmas condições.
  • Os testes não devem gerar falsos positivos.
  • Poucos casos de teste automatizados e confiáveis são melhores que muitos testes manuais e pouco confiáveis, que podem dar resultados inconsistentes mesmo quando executados nas mesmas condições.
  • A automação de testes deve começar pela validação das funcionalidades e dos benefícios mais importantes que os sistemas oferecem aos clientes internos e externos. Mesmo esse nível de automação é muito melhor que não automatizar nada.
  • Depois, automatize o máximo possível de casos de teste para aproveitar melhor o tempo e as habilidades das equipes DevOps.
  • Na automação de testes, evite feedback lento e periódico. Você precisa de feedback rápido sempre que você ou seu desenvolvedor tentar enviar código ao trunk.
  • Se os testes automatizados não forem rápidos o suficiente, encontre formas de acelerar os testes, o software ou ambos. Isso é essencial para ter uma plataforma de entrega contínua e um pipeline de implantação confiáveis e oferecer um serviço de qualidade aos clientes. Para ganhar ainda mais velocidade, execute os testes automatizados em paralelo.
  • Considere o desenvolvimento orientado a testes. Primeiro escreva os testes automatizados e depois construa o software.

A automação de testes viabiliza a entrega contínua e o pipeline de implantação

Como vimos, a metodologia DevOps permite que os desenvolvedores implantem o próprio código nos sistemas de produção. No entanto, observações de equipes DevOps em seus primeiros estágios mostraram que os desenvolvedores enviam rapidamente o código ao trunk e encerram tarefas e chamados, mas hesitam em apertar o botão que libera o código em produção. Eles temem comprometer a produção e levar a culpa.

Os desenvolvedores só conseguiram superar esse medo quando as equipes DevOps criaram uma cobertura de testes abrangente e confiável com automação.

No Google, quando um desenvolvedor envia código ao trunk, são feitas verificações iniciais, como análise estática de código, de duplicação e de cobertura de testes. Depois, quase um milhão de casos de teste automatizados validam o código. Se todas as verificações e casos de teste passarem, o pacote é gerado a partir do trunk, colocado em produção e replicado para todos os demais servidores de produção. É assim que 5.000 equipes pequenas e independentes do Google mantêm a produtividade e fazem dezenas de milhares de implantações em produção todos os dias. Sem automação de testes, isso não seria possível.

Feedback rápido e confiável é a única maneira de manter um pipeline de implantação seguro e proteger sua integridade. Quando o pipeline para devido a falhas em casos de teste automatizados, a equipe DevOps corrige o código e as configurações com erros antes de enviar qualquer outro trabalho ao trunk. Além disso, sempre que encontrar no pipeline um erro que poderia ter sido identificado e evitado com um caso de teste automatizado, crie o caso e acrescente-o ao repositório de automação.

Tipos de teste que você pode automatizar

  • Testes unitários Validam funções, classes ou módulos individuais das aplicações.
  • Testes de aceitação Validam as funcionalidades e os benefícios que as aplicações oferecem aos clientes.
  • Testes de integração (serviço) Validam como as aplicações interagem e como seus serviços funcionam de ponta a ponta.
  • Testes de desempenho e de estresse Validam se os serviços conseguem ganhar escala diante de cargas esperadas e inesperadas de clientes. Isso é especialmente importante para os serviços mais usados.
  • Testes não funcionais Validam a segurança, a disponibilidade, a capacidade e a escalabilidade.

Se sua equipe tem dificuldade para automatizar testes unitários e de aceitação, mas depende muito de testes automatizados de integração, provavelmente sua arquitetura tem alto acoplamento. Procure formas de desacoplar seus componentes.

CONCLUSÃO

Neste capítulo, abordamos a importância da automação de testes em DevOps. Ela é essencial para entregar com segurança e rapidez.

Independentemente de adotar DevOps, uma organização de TI precisa automatizar testes para alcançar alto desempenho, ser produtiva e rentável e atender bem clientes internos e externos.



Garantimos que nosso treinamento on-line gratuito vai preparar você para passar no exame de certificação DevOps!

  1. 01

    Faça sua inscrição on-line

    Escolha sua certificação Accredited e conclua a inscrição.

  2. 02

    Receba seu código de acesso

    Seu código pessoal de acesso ao exame chega imediatamente por e-mail.

  3. 03

    Prepare-se e faça o exame

    Estude com o treinamento gratuito e responda a 50 questões de múltipla escolha on-line.

  4. 04

    Conquiste sua credencial vitalícia

    Receba um certificado com validade mundial e um selo digital verificável.

Amostra de Certified DevOps Generalist™
Inscreva-se para a certificação

A SUA FORMAÇÃO PREMIUM GRATUITA ON-LINE

Receba a terceira edição de DevOps Revealed

Criamos seu treinamento com um grupo de líderes de negócios e de pessoas, coaches, mentores, especialistas e autoridades reconhecidas em DevOps dos principais setores. Qualquer visitante do site da International DevOps Certification Academy™ pode acessá-lo. Encontre os materiais pelos links Seu livro gratuito sobre DevOps e Seu treinamento premium gratuito de DevOps do menu principal.

Estes materiais são propriedade intelectual da International DevOps Certification Academy™ e estão protegidos por direitos autorais. Nós os disponibilizamos gratuitamente a todos porque compartilhar nossa experiência ajuda os profissionais de DevOps e promove o desenvolvimento da área.

Seu exame de certificação é composto de questões de múltipla escolha. Estude o conteúdo do treinamento on-line para adquirir os conhecimentos necessários para passar no exame e conquistar a certificação DevOps.

Garantimos que nosso treinamento on-line premium e gratuito vai preparar você para passar no exame de certificação DevOps!