Você provavelmente pronunciou as frases “teste cedo e muitas vezes” e “shift left”, mas você sempre se lembra da importância dessa frase da perspectiva do usuário final? Ou se tornou um ruído branco? Embora a abordagem ágil esteja focada na implementação de pequenos testes iterativos ao longo das fases de desenvolvimento e teste, o objetivo principal deve ser fornecer uma experiência de usuário consistente e de classe mundial. Seus clientes exigem um desempenho ideal, seja o único usuário ou um dos mil.
Os aplicativos atuais são baseados em múltiplas tecnologias, contando com vastas redes de provedores de terceiros e CDN’s. Além disso, os usuários finais podem acessar seu site ou aplicativos de qualquer lugar do mundo usando diferentes navegadores, sistemas operacionais e dispositivos móveis, todos com velocidades de conexão variadas. O tempo de resposta, a qualidade e a disponibilidade são fatores críticos que precisam ser avaliados antes de empurrar os aplicativos para a produção.
LoadView – Melhores Práticas e Processos
LoadView, nossa plataforma de testes de carga eestresse on-demand, baseada na nuvem, adota uma abordagem externa para testes de desempenho. Ele ajuda a avaliar como um site, aplicativo web ou API responderão a vários tráfegos, sem adicionar nenhuma infraestrutura adicional. A execução de um teste interno pode dizer o quão bem seu aplicativo ou site lida com um aumento no tráfego, mas nunca refletirá as condições do mundo real. O LoadView pode simular milhares de usuários simultâneos durante um teste e permite criar cenários com base na localização física de um usuário. Os resultados dos testes do LoadView também podem auxiliar nessas áreas críticas:
- Estabelecendo linhas de base de tempo de resposta em números específicos de carga do usuário
- Identificação de gargalos de desempenho
- Encontrar limites superiores de seus sistemas atuais para planejamento de capacidade
- Analisando o desempenho do servidor (CPU, memória, largura de banda, I/O do disco) e os tempos de resposta do banco de dados
Juntamente com o EveryStep Web Recorder, você pode criar ações avançadas de scripting que imitam ações reais do usuário com seu aplicativo, simulando mais de 40 navegadores e dispositivos desktop/mobile. Os scripts podem ser carregados na plataforma LoadView e reproduzidos por um número virtualmente ilimitado de usuários simultâneos, dando-lhe desempenho real de navegadores reais.
Os testes de carga e estresse, além de outros testes de desempenho, devem ser realizados o mais cedo possível durante a fase de desenvolvimento de uma versão ou atualização. No entanto, antes dos dias de tráfego pesado, como a Black Friday ou a Cyber Monday, é vital que os testes sejam concluídos meses antes para que os problemas possam ser identificados e resolvidos antes que eles potencialmente impactem os clientes – e sua reputação.
- Plano. Projete seu teste sem o incômodo de gerenciar hardware, dando-lhe a capacidade de identificar objetivos e definir um cenário configurando um número de usuários e duração do teste. Distribua a carga do usuário por locais de teste geográficos, simulando sua base de clientes.
- Executar. À medida que o teste começa, o serviço aloca instantaneamente a capacidade necessária para executar seu cenário. Todos os recursos são dedicados a este teste – sem servidores compartilhados. Ocasionalmente, um teste de carga pode se tornar um teste de estresse se atingir certos limiares que fazem com que o desempenho do site se degrade ou falhe.
- Visualize. Use métricas de linha de base para identificar a degradação do desempenho, revisando elementos fornecidos por gráficos de cachoeira. Você também pode exportar todos os dados relacionados ao HTTP em formato CSV para análise usando qualquer ferramenta que você escolher.
- Monitor. Continue usando seus scripts de teste de carga para criar monitoramento contínuo para verificar o desempenho, funcionalidade e acessibilidade de seus serviços com o monitoramento do UserView.
Shift Right – Monitoramento do desempenho após a implantação
Depois que seu aplicativo entrar em produção, os scripts criados durante o teste de carga podem ser carregados em nossa plataforma de monitoramento UserView. O UserView replica as interações do navegador de um usuário com um site ou um aplicativo. Você pode simular ações específicas do usuário, como cliques do mouse, navegação de página, carrinho de compras e entradas de texto. Essas ações são gravadas usando nosso EveryStep Web Recorder, permitindo que você grave e reprodução praticamente qualquer conjunto de etapas críticas de transação para monitoramento. EveryStep é uma das poucas ferramentas no mercado hoje que permite interagir com aplicativos de Internet ricos (RIAs), como AJAX, Flash, HTML5, PHP, Ruby, etc.
A capacidade de monitorar e testar aplicativos imitando o caminho de um usuário e sendo alertado se algo der errado, dá a você e sua equipe tempo para solucionar problemas de desempenho antes que eles afetem outros usuários, reduzindo assim o tempo de inatividade e, finalmente, melhorando a experiência geral do usuário. Assim, mesmo que “teste cedo e frequentemente” possa ser clichê dizer, à medida que seus processos de desenvolvimento e tecnologias mudam para a esquerda, não só seus usuários e clientes serão felizes, mas você também ganhará eficiência, alcançará melhores resultados e dará tranquilidade a você e sua organização.