Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter
-
Upload
leandro-ugioni -
Category
Software
-
view
339 -
download
1
Transcript of Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter
![Page 1: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/1.jpg)
Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter
Acadêmicos: Leandro Ugioni, Ramon Saraiva
Orientador: Profº. Cristiano Damiani Tomasi
1
![Page 2: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/2.jpg)
Objetivo geral
• Realizar um estudo na área de testes de desempenho de sistemas web, aplicando os conceitos na utilização da ferramenta Jmeter.
2
![Page 3: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/3.jpg)
Objetivos específicos• Estudar a área de testes de software;• Estudar os conceitos e técnicas de testes de desempenho;• Analisar fatores relevantes ao desempenho de um
sistema web;• Avaliar as características funcionais da ferramenta
Jmeter;• Utilizar a ferramenta para aplicar testes de desempenho
em uma aplicação web;• Demonstrar os resultados obtidos nos testes realizados.
3
![Page 4: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/4.jpg)
Organização do trabalho
• Qualidade e Testes de Software;• Automação de Testes de Desempenho;• Desempenho de Sistema Web;• Estudo de Ferramentas de Teste;• Estudo de Caso usando a Ferramenta JMeter.
4
![Page 5: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/5.jpg)
Qualidade
• Conceito conhecido desde a época em que o homem começou a produzir e comercializar produtos;
• Sua avaliação deve ser baseada em atributos para que se estabeleça uma avaliação justa;
• Qualidade pode ser definida como algo abstrato variando conforme a necessidade atual.
5
![Page 6: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/6.jpg)
Qualidade de Software
Quais as dificuldades e resultados quando a qualidade é aplicada a engenharia de software?
• Requisitos Funcionais e de desempenhos conforme o que está documentado;
• Nível adequado de confiabilidade na execução das funcionalidades;
• Iniciativa da empresa;• Qualidade com prazo e baixo custo.
6
![Page 7: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/7.jpg)
Qualidade de Software
Qualidade de software pode ser usada para enfatizar três pontos importantes na engenharia de software:
1. Requisitos de Software;
2. Processo de Desenvolvimento;
3. Requisitos implícitos.
7
![Page 8: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/8.jpg)
Importância da qualidade de software nas empresas
“Você pode fazer direito ou fazer novamente”(Pressman, 2002).
• Redução de custo e conformidade com requisitos;
• Consequências finais;• Desejo das empresas;• Metodologia de desenvolvimento.
8
![Page 9: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/9.jpg)
Testes de Software
• Desenvolvimento do software está sujeito a falha humana;
• Objetivo de encontrar erros e realizar validações;
• Se executado de forma paralela ao desenvolvimento do software, diminui os custos nas correções ainda em fase inicial.
9
![Page 10: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/10.jpg)
Dimensões de teste
Todo teste realizado deve possuir as seguintes etapas:
“Sempre que possível deve-se encontrar algum bug durante o teste” (Molinari, 2003).
Planejamento Plano de Teste Casos de Testes
Execução dos Testes Análise dos Resultados
![Page 11: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/11.jpg)
Fonte: Dos Autores
![Page 12: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/12.jpg)
Automação de Testes
• Programas que realizam os testes automaticamente;
• Resultados positivos a médio e longo prazo;
• Foco em áreas criticas;
• Reutilização dos testes;
• Não substitui por completo os testes manuais.
12
![Page 13: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/13.jpg)
Ferramentas de Automação
• Destinadas a áreas e objetivos específicos;
• Possuem limitações e erros;
• Variam conforme o objetivo do projeto de testes;
• O projeto de automação dos testes não pode ser focado apenas em uma única ferramenta pois isso pode inviabilizá-lo.
13
![Page 14: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/14.jpg)
Fonte: Dos Autores
![Page 15: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/15.jpg)
Desempenho de Sistemas Web
“O software que é mais rápido é mais utilizado” (RAMOS, 2014).
•Milhões de requisições X Velocidade de Resposta;
•O desempenho está ligado à eficiência e a vazão disponível para tratar os gargalos de tempo em tempo.
15
![Page 16: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/16.jpg)
Estudo das Ferramentas de Testes
16
Fonte: Dos Autores
![Page 17: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/17.jpg)
“JMeter é uma ferramenta de testes de performance para sistemas web que possibilita que o usuário defina requisições que podem ser configuradas para uma determinada quantidade de repetições, também podem ser adicionados pontos de verificação dentro do script” (MOLINARI, 2010).
17
![Page 18: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/18.jpg)
18
Apache JMeter
Fonte: Dos Autores
![Page 19: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/19.jpg)
19
Estudo de Caso – Portal Acadêmico
![Page 20: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/20.jpg)
Teste de Tempo de Resposta:
•50 usuários virtuais;•Interação simultânea;•Cada requisição terá o tempo de resposta medido;•ADSL – 2 megabytes;•Resultado esperado: 1 segundo com variações de até 1,5 segundos.
20
Estudo de Caso – Portal Acadêmico
![Page 21: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/21.jpg)
Teste de Throughput (Vazão):
•20 usuários virtuais;•Incremento de novos 20 usuários a cada 2 segundos, até no máximo 100 usuários ativos;•ADSL – 2 megabytes;•Resultado esperado: Verificar se em algum momento as requisições nas funcionalidades apresentam falhas.
21
Estudo de Caso – Portal Acadêmico
![Page 22: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/22.jpg)
22
Teste de Tempo de Resposta
Duração Média de tempo requisições
Pico de Tempo/Funcionalidade
Consulta ao acervo
90 seg. 4,5 segundos 7,9 segundos - Login do portal
Consulta de notas parciais
80 seg. 4,6 segundos 7,9 segundos - Login do portal
Criação de aulas 240 seg. 8,4 segundos 14,7 segundos - Diário de Classe
Estudo de Caso – Portal Acadêmico
Fonte: Dos Autores
![Page 23: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/23.jpg)
23
Teste de Throughput
Duração Qtd. Máxima de Usuários
Percentual de Erros/Funcionalidade
Consulta ao acervo
120 seg. 100 usuários Não ocorreu erros
Consulta de notas parciais
105 seg. 100 usuários Não ocorreu erros
Criação de aulas 600 seg. 100 usuários 2% de erros - Diário de classe;2% de erros - Listar turmas
Estudo de Caso – Portal Acadêmico
Fonte: Dos Autores
![Page 24: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/24.jpg)
Criação e Execução de um Teste
• Criação e execução do teste de consulta ao acervo na ferramenta JMeter.
24
![Page 25: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/25.jpg)
Considerações Finais
• Investimento alto nas ferramentas comerciais;• Investimentos em testes de performance garantem
mais usuários ativos;• A ferramenta JMeter se mostrou capaz de
substituir a maioria das ferramentas existentes;• A ferramenta JMeter atendeu todas as
necessidades relativas a teste de performance web estudado no referencial teórico de forma simples e com baixo custo, os resultados foram imediatamente obtidos.
25
![Page 26: Automação de testes de desempenho para sistemas web utilizando a ferramenta Jmeter](https://reader034.fdocument.pub/reader034/viewer/2022042701/55ac93041a28abcd4f8b4806/html5/thumbnails/26.jpg)
Recomendações para trabalhos futuros
• Realizar testes funcionais em conjunto com os testes de desempenho através da ferramenta JMeter;
• Realizar testes de desempenho na camada do servidor da aplicação web;
• Criação de um protótipo de ferramenta para automação de testes de desempenho baseado no código fonte do JMeter;
• Realizar um estudo de caso utilizando uma ferramenta de automação de testes de desempenho desenvolvida no formato SaaS.
26