O teste de desempenho é uma técnica de teste de software não funcional que determina como a estabilidade, a velocidade, a escalabilidade e a capacidade de resposta de um aplicativo se mantêm sob uma determinada carga de trabalho. É uma etapa fundamental para garantir a qualidade do software, mas, infelizmente, muitas vezes é vista como uma reflexão tardia, isolada, e deve começar depois que o teste funcional for concluído e, na maioria dos casos, depois que o código estiver pronto para ser lançado.
Os objetivos do teste de desempenho incluem avaliar a saída do aplicativo, a velocidade de processamento, a velocidade de transferência de dados, o uso da largura de banda da rede, o número máximo de usuários simultâneos, a utilização da memória, a eficiência da carga de trabalho e os tempos de resposta dos comandos.
Saiba como adotar uma abordagem combinada de engenharia de desempenho "shift left" e "shift right" para criar uma organização de desenvolvimento de software altamente produtiva.
Saiba maisAs organizações executam testes de desempenho por pelo menos um dos seguintes motivos:
As etapas específicas do teste de desempenho variam de uma organização e de um aplicativo para outro. Depende de quais indicadores de desempenho a empresa considera mais importantes. No entanto, os objetivos gerais dos testes de desempenho são basicamente os mesmos em todos os setores, portanto, há um determinado fluxo de trabalho que a maioria dos planos de teste seguirá.
Identificar o ambiente e as ferramentas de teste
Identifique o ambiente de produção, o ambiente de teste e as ferramentas de teste à sua disposição. Documente o hardware, o software, as especificações de infraestrutura e as configurações nos ambientes de teste e de produção para garantir a coerência. Alguns testes de desempenho podem ocorrer no ambiente de produção, mas deve haver salvaguardas rigorosas que impeçam que os testes interrompam as operações de produção.
Definir critérios de desempenho aceitáveis
Determine as restrições, as metas e os limites que demonstrarão o sucesso do teste. Os principais critérios serão derivados diretamente das especificações do projeto, mas os testadores devem ser adequadamente capacitados para definir um conjunto mais amplo de testes e padrões de referência.
Planejar e projetar testes
Pense em como o uso pode variar amplamente e crie cenários de teste que acomodem todos os casos de uso viáveis. Projete os testes de acordo e defina as métricas que devem ser capturadas.
Preparar o ambiente e as ferramentas de teste
Configure o ambiente de teste antes de executar os testes de desempenho. Monte suas ferramentas de teste com antecedência.
Executar os testes de desempenho
Execute os testes. Capture e monitore os resultados.
Resolver e testar novamente
Consolidar e analisar os resultados dos testes. Share as descobertas com a equipe do projeto. Faça o ajuste fino do aplicativo, resolvendo as deficiências de desempenho identificadas. Repita o teste para confirmar que cada problema foi eliminado de forma conclusiva.
Crie um ambiente de teste que espelhe o ecossistema de produção o mais próximo possível. Sem isso, os resultados dos testes podem não ser uma representação precisa do desempenho do aplicativo quando ele entrar em operação.
Teste de desempenho e engenharia de desempenho são dois termos intimamente relacionados, porém distintos. O teste de desempenho é um subconjunto da engenharia de desempenho e tem como principal objetivo avaliar o desempenho atual de um aplicativo sob determinadas cargas.
Para atender às demandas de entrega rápida de aplicativos, as equipes de software modernas precisam de uma abordagem mais evoluída que vá além dos testes de desempenho tradicionais e inclua uma engenharia de desempenho integrada e de ponta a ponta. A engenharia de desempenho é o teste e o ajuste do software para atingir uma meta de desempenho definida. A engenharia de desempenho ocorre muito antes no processo de desenvolvimento de software e busca evitar proativamente problemas de desempenho desde o início.
Como o teste de desempenho busca estabelecer o nível de execução de um sistema quando submetido a diferentes cargas de trabalho, é difícil executar esses testes de forma eficiente sem usar ferramentas de teste automatizadas. As ferramentas de teste variam em sua capacidade, escopo, sofisticação e automação. Descubra como a OpenText Testing Solutions pode elevar a eficácia de seus testes de desempenho a um novo patamar.
Simplifique os testes de carga e desempenho
Testes colaborativos de desempenho e carga
Mantenha-se ágil com testes de desempenho e carga baseados na nuvem
Diga adeus aos gargalos