Newsletter #043 - Continuos Performance.
Seu newsletter semanal voltado para tecnologia e qualidade de software
Olá pessoal, mais uma semana de newsletter voltado para tecnologia e qualidade de software.
Na semana passada vimos sobre as top 10 ferramentas de automação de testes do ano de 2024, caso não tenha lido segue o link. Na newsletter de hoje iremos começar uma série de textos voltados para testes de performance, hoje iremos conversar sobre continuos performance, bora lá?
Continuos Performance
Bom, bem provável que você já tem ouvido em uma empresa, nos estudos ou até mesmo aqui na newsletter a respeito de DevOps e como essa cultura aperfeiçoou as organizações. Seu conceito se popularizou em conjunto com agilidade, facilitando as integrações entre as equipes na qual o objetivo final de todo projeto é entregar o melhor para seu cliente.
Dentro dessa camada cultural, DevOps cresceu também como processo, seja ele na camada da agilidade de planejamento e entrega, sendo este último muito conhecido como Continuos Integration e Continuos Delivery (CI/CD), aqui deixo minha pergunta, porque não Continous Performance?
Em automação de testes, foi criado toda uma esteira seguindo a pirâmide de testes, testes unitários, testes de integração e testes end-to-end, contudo somente esses testes não garantem uma entrega com qualidade, porque um dos fatores mais importantes foi deixado de lado momentaneamente que é a performance do produto que você está entregando ao seu cliente.
A camada de performance, os testes foram deixado de lado por muito tempo pela dificuldade de desenvolver os testes, bem como na maioria das vezes sendo um teste robusto e que consumia muito tempo, logo, esses testes ficaram muito utilizados para garantir a aplicação para um determinado evento, por exemplo uma black friday que tem milhares de acesso simultâneos.
Com a evolução das ferramentas de testes de performance abriu-se a possibilidade para que fosse aplicado o teste em conjunto com a esteira de entrega contínua, aqui não pensando somente para eventos esporádicos, mas sim, garantir que a cada funcionalidade nova, a aplicação não perca sua performance, ai você pode se perguntar, como conseguir realizar essa implementação?
Primeiro de tudo é necessário ter implementação de ferramentas de monitoramento que fornecem métricas em tempo real sobre a performance da aplicação, após essa etapa deve-se criar a pipeline e executar automaticamente testes de carga, estresse e volume em diferentes estágios do desenvolvimento, visando não somente forçar a aplicação mais coletar métricas como taxa de erros, response time e requisições visando uma meta que a cada nova funcionalidade a aplicação não perca a performance partindo da coleta das métricas comentadas logo acima.
Para facilitar esse processo, suponhamos que temos um projeto de um sistema de cadastro de produtos para venda, para realizar esses cadastros devemos realizar o login, logo que o sistema ficou online para realizar o login 10 usuários simultâneos gastavam 2 segundos para acessar. Novas funcionalidades foram sendo criadas, correções de bugs e débitos técnicos fizeram que o acesso de login saltasse de 2 segundos para 10 segundos, será que o usuário está satisfeito com esse tempo? Usando o continuos performance a cada nova funcionalidade ou correção seria executado o teste de performance e coletado seu tempo, caso o tempo fosse superior a pipeline anterior o fluxo ficaria bloqueado até que as correções fossem feitas para suprir a performance estabelecida.
A aplicação do conceito de continuos performance não é uma tarefa fácil, é necessário muita comunicação e entendimento do time a respeito do teste que será feito e seu objetivo final. Para as próximas semanas estaremos conhecendo mais sobre testes de performance, desde os conceitos mais básicos até aplicação de uma esteira de continuos performance com a ferramenta K6, não perca 🚀!
O que rolou de Tecnologia?
50 Melhores Sites para Templates HTML Grátis - site que deve sempre estar na sua barra de favoritos para quando precisar de um template básico para sites estáticos. No artigo é apresentado 50 sites de template para páginas estáticas gratuito.
GPT-4: Novo GPT da OpenAI - notícia da semana é a evolução do chatgt. E nesse sentido nada mais justo e entendermos o que tem de novo nessa evolução do OpenAI.
Construindo seu próprio cliente gráfico ChatGPT com NextJS e Wing - excelente e completo artigo na qual apresenta como criar uma pagina integrado com o chatgpt e implantado em nuvem AWS.
E Qualidade de Software, como está?
A necessidade de uma estrutura de teste de automação: um guia abrangente -aplicar automação de testes não é uma tarefa fácil. É necessário um planejamento e estruturação, nesse sentido o artigo apresenta essa visão abrangente de como planejar para desenvolver seus testes automatizados.
Por que grandes engenheiros de automação devem parar de escrever testes - texto bem interessante que abrange a visão que o QA evolua para o desenvolvedor. Aquele texto interessante e polêmico.
QA em perigo: demissões em massa em breve? - desde o ano passado passamos por preocupação relacionada a demissões em massa (eu mesmo passei por isso no ano passado). Texto muito interessante que traz formas da gente prevenir e diminuir assim essa preocupação.
Eventos Importantes não perca!
Aprenda a Programar – Seu Portal para o Universo do Código! - Evento Online.
Data: 30/05
Inscrições abertas
Vejo vocês na próxima newsletter 😁🚀!
“Enquanto você viver, continue aprendendo a viver.”– Sêneca