Like A Girl

Pushing the conversation on gender equality.

Code Like A Girl

DevOps Testing — Uma tendência?

image source: https://www.radview.com/blog/4-ideas-for-getting-started-with-devops-performance-testing/

Tirando da “gaveta” uma das minhas resoluções de Ano Novo, e uma vontade que eu tinha de escrever sobre assuntos mais técnicos, além de ter começado recentemente o curso de DevOps Testing da Microsoft (é gratuito, só paga caso queira o certificado) decidi começar uma sequência de artigos para ajudar a pessoas que como eu que estão estudando para desenvolver mais seus skills DevOps. Então pra “começar do começo”, vamos começar falando pelo próprio DevOps!

Então afinal, o que é DevOps?

O termo DevOps deriva da junção das palavras “desenvolvimento” (development) e “operações” (operations), sendo uma prática de engenharia de software que possui o intuito de unificar o desenvolvimento de software (Dev) e a operação de software (Ops). A característica principal do movimento DevOps é defender fortemente a automação e monitoramento em todas as fases da construção do software, da integração, teste, liberação para implantação e gerenciamento de infraestrutura. DevOps pretende fornecer, em ciclos de desenvolvimento menores, frequência de implantação aumentada, liberações mais seguras, em alinhamento próximo com os objetivos de negócio.

Certo, então podemos concluir que DevOps nada mais é do que uma cultura baseada em um conjunto de práticas de integração de equipes de desenvolvimento, operação e apoio com a adoção de processos automatizados para produção rápida e segura de aplicações e/ou serviços.

Se tratando de uma cultura, o Devops tem sua base sustentada em 3 pilares:

  • Integração Contínua(Continuous Integration): é uma prática de desenvolvimento de software em que os desenvolvedores, com frequência, juntam suas alterações de código em um repositório central e testes automatizados são executados antes do deploy da aplicação.
  • Entrega Contínua(Continuous Delivery): é um conjunto de práticas com o objetivo de garantir que um novo código esteja apto para ser disponibilizado em ambiente de produção.
  • Implantação Contínua (Continuous Deployment):a cada nova alteração enviada ao repositório inicia automaticamente um processo automatizado que envia as mudanças para o ambiente desejado.
https://aws.amazon.com/pt/devops/continuous-integration/

DevOps eleva a cultura corporativa ao basea-la em desempenho e performance, o que reduz espaço para burocracias engessantes e aumenta o nível de colaboração entre os integrantes dos times com uma sensação de fazer realmente parte de um processo colaborativo, contribuindo para uma maior e melhor produtividade do time tanto individualmente quanto como um todo.

Certo, agora que nós entendemos que o DevOps é uma cultura que visa uma entrega contínua de valor e de qualidade ao cliente, lembra das camadas da pirâmide de Testes do Martin Fowler?(se você não conhece, não se preocupe, vamos ver mais pra frente nos próximos posts! ) Pois bem, é aí que você começa a ver com clareza a necessidade dos testes em cada etapa de desenvolvimento de software, porque temos a necessidade de uma quantidade maior de testes unitários, porque é importante a automação de testes tanto a nivel unitário quanto na camada de UI, e assim tudo começa a fazer mais sentido não?

Tendo esses conceitos em mente, vamos começar nossa jornada em QA do zero, mas dessa vez num nível mais técnico do que dos outros artigos que escrevi anteriormente, vamos percorrer toda a estrutura de testes com exemplos práticos e como fazer o DevOps Testing fazer sentido pra você.

Nos vemos no próximo post! 😉