Blog > TESTES DE DESEMPENHO - PARTE III - Guia de atividades

22/fev

Nesse post veremos as principais atividades sugeridas para a realização de testes de desempenho.

E ae pessoal, tudo sussa?

Hoje veremos as principais atividades relacionadas ao teste de desempenho. 

Nunca se esqueça de dar atenção e contemplar totalmente ou em parte (verificar se são pertinentes ao projeto) as atividades listadas abaixo. Identifique-as no seu plano de teste de desempenho e acompanhe o projeto e execução de teste fazendo os ajustes sempre que necessários forem. Caso você tenha aversão a documentos e "planos", vá colando post-its com as informações relevantes em um quadro e tenha muito cuidado para não sumirem com alguns post-its einh!

Verificar/Registrar Características do Ambiente

Características físicas e lógicas do ambiente de produção devem ser observadas e comparadas com as características do ambiente de teste. Identificar ferramentas disponíveis e contributivas na realização dos testes. Mapear riscos e listar as preocupações relacionadas ao ambiente.

Aí você me pergunta: Como assim?

E, para explicar, eu te pergunto:

O ambiente da aplicação que será testada é semelhante ao de produção? O ambiente possui balanceador de carga? Qual o banco de dados da aplicação? Quanto de memória e processamento tem o servidor de aplicação, banco de dados, etc? Qual a banda de rede (100Mbps, 1Gbps, 10Gbps, etc)? A requisição passa por quantos e quais switchs, roteadores, etc? Existe algum IPS funcionando? A aplicação se integra com algum serviço externo(localização de CEP, vendas por cartão, etc)? A aplicação em teste envia emails?

Essa atividade é justamente a coleta desse tipo de informação, assim como análise de riscos e preocupações relacionadas a estas infromações.

Solicitar os critérios de aceitação

É importante que os critérios de aceitação sejam claramente especificados e disponibilizados para o time responsável pelos testes de desempenho. Os critérios devem conter informações sobre as expectativas dos clientes e atendimento às obrigações contratuais.

Aí você me pergunta novamente: Como assim?

E, para explicar, novamente eu te pergunto:

Qual é o tempo de resposta máximo aceitavel? E se, de 10 requisições, apenas 1 ultrapassar este limite, é aceitavel? E páginas que geram relatórios, também devem respeitar este tempo máximo de resposta? E as telas de consulta? A cada 10 requisições, quantas podem falhar? Mesmo se o usuário estiver utilizando a aplicação a partir de um celular?

Planejar Testes de Desempenho

Um bom plano de teste de desempenho traz benefícios significantes durante todo o ciclo de avaliação. Seja disciplinado, planeje seu teste com atenção e não dispense ou se deixe levar pela dificuldade na obtenção de informações necessárias. Obtenha o comprometimento dos envolvidos para a execução do plano de teste.

As informações coletadas nas atividades acima são importantes e devem ser documentadas. Mesmo assim, as vezes é muito difícil consegui-las e isso pode levar o cidadão a deixar pra lá determinada informação que fará falta mais a frente, então não se deixe abater pelas dificuldades e tenha foco no seu objetivo (caramba, essa frase pareceu muito com a de alguns livros de auto-ajuda hehehe)

Projetar Testes de Desempenho

O projeto de testes deve conter a identificação dos cenários de teste, o(s) script(s) de teste, seus dados de entrada e deve ser configurado de acordo com os objetivos propostos e planejados para cada bateria de teste.

Até agora, a preocupação era entender todo o contexto de funcionamento da aplicação que será testada. A partir de agora o foco estará em "como" a aplicação será testada. Nessa atividade nós determinamos quais os cenários serão testados (login de usuário, cadastro de pedido, exibição de relatório consolidado, etc.). Também verificamos os dados necessários aos testes (no cadastro de usuário, por exemplo, não costuma ser possível informar o mesmo CPF para dois cadastros distintos, então essa é uma informação chamada de dado descartável)

Configurar o ambiente

Com o plano de testes e o projeto de teste em mãos, é hora de configurar o ambiente. Mapear o conjunto de dados de entrada para a execução dos scripts, iniciar os agentes e deixa-los de prontidão e iniciar a instância da máquina controladora, caso o teste seja executado de forma distribuida.. Nesse momento é importante comunicar os envolvidos sobre a iminência do teste, pois assim eles poderão se preparar e deixar as ferramentas de monitoramento prontas para coletar as informações.

Executar Testes e Analisar Resultados

Antes de executar a bateria de teste, o responsável deve comunicar todos os envolvidos sobre o início da execução, pois o monitoramento dos recursos deve ocorrer durante a execução, e não após.

Também é importante verificar a saúde das máquinas utilizadas no teste para que não ocorram falsos indicadores em decorrência de problemas no ambiente de teste utilizado.

A análise dos resultados deve ser realizada desde o inicio da execução dos testes. Os dados coletados podem ser úteis durante a execução dos testes e devem ser comparados entre as várias baterias de teste planejadas e executadas.

Os ajustes realizados no ambiente alvo do teste (ajustes no sistema, alterações de configuração em servidores de aplicação e banco, modificações na forma de balanceamento, etc.) devem ser registrados e associados ao momento de sua implantação, pois tais ajustes afetarão positivamente ou negativamente nos resultados de teste e poderão ser mantidos ou descartados.

Elaborar relatório dos testes

O relatório de testes deve ser preenchido não somente pelo analista responsável pelos testes, mas também pelos envolvidos na execução. Os responsáveis pela infraestrutura, por exemplo, devem relatar o comportamento dos servidores de aplicação e de banco de dados durante e após a execução das baterias de teste. Informações sobre a utilização da banda de rede, comportamento do balanceador de carga, etc., são informações relevantes e devem ser descritas no relatório de testes.

Por enquanto é só pessoal!

No próximo post, veremos como gravar um script de teste com o JMeter, e suas principais configurações.

TESTES DE DESEMPENHO - PARTE IV - JMeter

Algo ficou confuso? Sinta-se a vontade para me mandar email. Meu email encontra-se no topo desta tela, assim como meu mini currículo.

Espero que vocês tenham gostado, e até a próxima pessoal!

POSTS RELACIONADOS

AGENDA

CURSOS RELACIONADOS