Diante desse cenário, este estudo pretende responder à seguinte pergunta: Como aplicar e porque aplicar o teste de desempenho e quais ferramentas de teste de desempenho utilizar? A partir dessa questão, será apresentado o que o Teste de Desempenho nos oferece de concreto em relação à performance do software.
Para que se chegue ao objetivo geral, que é apresentar os benefícios oferecidos pela técnica e ferramentas de teste de desempenho utilizado no dia a dia de uma forma estratégica a fim de driblar o tempo e garantir a qualidade e confiabilidade do produto, foram definidos três objetivos específicos. No primeiro, pretende-se definir com base em literatura cientifica o que é Teste de e Desempenho. O segundo objetivo é mostrar o alinhamento estratégico da utilização de ferramentas de Teste de desempenho. Já o terceiro objetivo é esclarecer a importância do teste de desempenho para manter a confiabilidade da aplicação ou sistema.
Sabendo que os objetivos de desempenho precisam expressar as medidas capazes para determinar o quão rápido o sistema deve ser executado, qual o limite aceitável para seu desempenho, qual o consumo de processador e memória aceitável e que número de usuários concorrentes deve ser suportado. Os objetivos e foco de teste de desempenho devem estar claramente estabelecidos nas metas do projeto do sistema, pois somente assim poderão nortear os esforços do desenvolvimento para se saber quando eles foram atingidos. (MEIER et al. 2007)
Nos sistemas de computadores o desempenho pode ser definido de maneiras diferentes. Podemos considerar como o sistema de melhor desempenho aquele que executa em menor tempo um determinado programa, ou ainda, aquele sistema que executa o maior número de programas num determinado intervalo de tempo. (CASTRO, 2005).
Dessa forma, estamos considerando dois aspectos diferentes para avaliar o desempenho. O primeiro é o tempo de resposta ou tempo de execução da aplicação. O segundo é denominado throughput ou vazão, e considera a quantidade de trabalho executado na unidade de tempo. Estes aspectos refletem a visão do usuário e a visão do gerente do sistema.
Segundo Castro (2005, p.20), o teste de desempenho é um tipo de testes destinados a determinar a capacidade de resposta, throughput, confiabilidade e / ou a escalabilidade de um sistema sob uma determinada carga de trabalho.
O teste de desempenho é comumente utilizado para realizar o seguinte:
- Avaliar a disponibilidade do aplicativo ou sistema;
- Avaliar os critérios de desempenho;
- Comparar as características de desempenho de vários sistemas ou configurações de sistema;
- Procurar a fonte de problemas de desempenho;
- Encontrar os níveis de rendimento;
O teste de desempenho é uma classe de testes implementada e executada para caracterizar e avaliar o desempenho relacionado a características do objetivo do teste, como perfis de andamento, fluxo de execução, tempos de resposta, confiabilidade e limites operacionais.
Os testes de desempenho baseiam-se na identificação e na eliminação de gargalos de desempenho relacionados à arquitetura. (IBM, 2004)
De acordo com Dias (2007, p.54-59), o teste de performance deve ser parte de todo o processo de desenvolvimento, pois os benefícios são significantes. Esses testes podem ser executados com o objetivo de analisar e otimizar o desempenho de um dado sistema. A finalidade é encontrar possíveis gargalos nos diversos níveis do software (aplicação, banco de dados, sistema operacional, rede, etc). Para realizá-los, devem ser utilizadas ferramentas adequadas para as medições dos resultados obtidos. Dessa forma, através da monitoração desses resultados, é possível otimizar a infra-estrutura que suportará o sistema, tanto do lado do servidor como do lado do cliente.
[Crédito da Imagem: Desempenho de Software – ShutterStock]
Leave a Comment