SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
Usando JMeter para 
testar sua aplicação JSF 
S 
Jadson Santos
JMeter + JSF 
S Testes de desempenho e estresse 
S Testam um sistema quanto aos seus requisitos de 
desempenho 
S Latência: tempo entre uma requisição e a resposta da operação 
S Vazão (throughput): o número de operações que o sistema é 
capaz de completar em um dado período de tempo 
S Escalabilidade: A quantidade de usuários simultâneos que o 
sistema pode lidar 
S Recursos: Processamento e Memória
JMeter + JSF 
S JMeter 
S Testes de desempenho em aplicações cliente/servidor 
S Escrita em Java 
S Suporte a diversos protocolos: HTTP, JDBC, FPT, SOAP 
S Pode ser usada para testes funcionais 
S Possui várias asserções que podem ser usadas para verificar 
resultados das requisições
JMeter + JSF 
S JMeter (instalação) 
S Baixar o arquivo em: 
S http://jmeter.apache.org/download_jmeter.cgi
JMeter + JSF 
S JMeter (instalação) 
S Descompactar e executar o arquivo 
S bin/jmeter.bat (windows) ou bin/jmeter.sh (macOS/Linux)
JMeter + JSF 
S JMeter componentes básicos: 
S Plano de Teste: Configurações do seu teste 
S Área de Trabalho: Área de armazenamento temporária 
S Grupo de Usuários: Grupo de usuários virtuais que serão os 
usuários que executarão os testes (cada usuário é uma thread 
criada pelo JMeter) 
S O JMeter funciona de forma hierárquica, o nó raiz é o 
plano de testes, abaixo dele vem o grupo de usuários, 
abaixo desse grupo os demais elementos. 
S O JMeter executa o plano de testes de acordo com a ordem 
desses elementos na árvore
JMeter + JSF 
S Plano de Teste 
S Todo teste com JMeter possui um plano de testes
JMeter + JSF 
S Grupo de Usuários 
S Para criar um teste deve-se obrigatoriamente adicionar um 
grupo de usuários ao plano de testes. 
S Adicionar -> (Threads) Users -> Grupos de Usuários
JMeter + JSF 
S Grupo de Usuários 
S Na figura abaixo estamos configurando para 1000 usuários 
executarem o teste dento de 60 segundos com 1 repetição e os 
testes devem continuar caso algum dos usuários falhe 
S Todos os demais elementos do teste devem ficar dentro do 
Grupo de Usuários
JMeter + JSF 
S Padrões de Requisição HTTP e Gerenciador de Cookie 
HTTP 
S Adicione ao grupo de usuários um padrão de requisições 
HTTP e um gerenciador de Cookie que limpe os cookies 
gerados, de forma que eles não atrapalhem o resultado do seu 
teste.
JMeter + JSF 
S Padrões de Requisição HTTP 
S Adicionar -> Elementos de Configuração -> Padrões de 
Requisições HTTP 
S Gerenciador de Cookie HTTP 
S Adicionar -> Elementos de Configuração -> Gerenciador de 
Cookie HTTP
JMeter + JSF 
S Integração com JSF 
S Para simular o parâmetro ViewState passado em toda 
requisição do JSF, adicione um extrator de expressão regular 
com os seguintes dados: 
S Adicionar –> Pós Processadores -> Extrator de Expressão 
Regular 
Nome de 
Referência 
jsfViewState 
Expressão Regular <input type="hidden" name="javax.faces.ViewState" id="javax 
.faces.ViewState" value="([^"]+)".*/> 
Modelo $1$ 
Número de 
0 
Combinações
JMeter + JSF 
S Fluxo do seu teste 
S Para um teste simples, adicione um controlador lógico que 
executa uma única vez. 
S Adicionar -> Controlador Lógico -> Controlador de Uma 
Única Vez 
S Neste ponto a estrutura do seu teste deve está confirme a 
figura abaixo:
JMeter + JSF 
S Requisições HTTP 
S A navegação pelas páginas JSF da aplicação é realizada 
por meio de requisições HTTP 
S Crie dentro do controlador uma requisição HTTP para 
chamar a página de login da sua aplicação 
S Adicionar -> Testador -> Requisição HTTP
JMeter + JSF 
S Requisições HTTP 
S Adicione as seguintes informações à requisição HTTP: 
S Nome do Servidor ou IP: localhost 
S Porta: 8080 
S Implementação: Java 
S Protocolo: Http 
S Método: GET 
S Caminho: adicione o caminho para a página JSF de login, a partir 
do contexto do sistema
JMeter + JSF 
S Requisições HTTP 
S Ao mandar executar o teste, conforme foi configurado no 
grupo de usuários, 1000 requisições em 1 minuto serão 
feitas a essa página
JMeter + JSF 
S Testando o Login 
S A próxima ação que o usuário realiza após acessar a página 
de login é digitar o usuário e a senha e realizar o login. 
S Para simular esse comportamento, crie outra requisição 
HTTP
JMeter + JSF 
S Testando o Login 
S Digite as mesmas informações utilizadas na 1ª requisição à 
tela de login (é possível duplicar as informações de outro 
elemento no JMeter). 
S A única diferença é que para simular uma ação JSF é preciso 
mudar o método da requisição HTTP de GET para POST. 
S Em seguida, deve-se digitar os parâmetros da requisição que 
serão os dado passados ao servidor para executar a ação de 
logar no sistema
JMeter + JSF 
S Testando o Login 
S Os três parâmetros abaixo são os valores dos parâmetros 
passados pelo JSF em toda requisição realizada 
S Então eles são obrigatórios em toda requisição HTTP criada 
no JMeter para realizar o teste de performance do seu 
sistema. 
Nome Valor Codificar 
myForm%3A_SUBMIT 1 false 
myForm%3A_link_hidden_ false 
javax.faces.ViewState ${jsfViewState} 
S jsfViewState é a variável criada no extrator de expressão 
regular, como esse extrator está definido dentro do mesmo 
grupo de usuários, ela é enxergada pela sua requisição 
HTTP
JMeter + JSF 
S Testando o Login 
S Após isso, deve-se informar os parâmetros que seriam os 
dados digitados pelo usuário. Sendo que o formulário a ser 
submetido deve estar entre os parâmetros 
Nome Valor Codificar 
myForm myForm false 
myForm:inputLogin joao true 
myForm:inputSenha 123 true 
myForm:buttonLogar myForm:buttonLogar true 
S Codificar = true pode usar o “:” no id do campo 
S Codificar = false deve-se digitar “%3A” em vez do “:”
JMeter + JSF 
S Testando o Login 
S Uma maneira de saber quais são os parâmetros a serem 
informados é executar a ação pelo navegador utilizando o 
FireBug ( https://getfirebug.com/ ) 
S Pelo FireBug, na aba Redes -> Clicar na página principal 
requisitada -> Postar 
S Aparecem os parâmetros que o JSF passa ao executar a ação. 
São os mesmo parâmetros que devem ser informados no 
JMeter.
JMeter + JSF 
S Testando o Login (visualizando os parâmetro da requisição 
pelo FireBug)
JMeter + JSF 
S Testando o Login 
S Uma boa prática de programação é colocar um “id” em 
todos os campos das páginas JSF. 
S Essa prática também irá ajudar a identificar os parâmetros 
necessário na requisição. Veja abaixo uma página JSF sem 
ids como fica difícil de interpretar:
JMeter + JSF 
S Visualizando os resultados 
S Para ajudar a analisar os resultados do teste, existem vários 
“ouvintes” que podem ser adicionados ao grupo de usuários. 
S Adicionar -> Ouvintes -> Gráfico de Resultados 
S Nesse gráfico é possível ver entre outra medidas: vazão, 
tempo médio das requisições, etc
JMeter + JSF 
S Visualizando os resultados por meio de um Gráfico de 
Resultados
JMeter + JSF 
S As requisições as demais páginas do sistema podem ser 
simuladas de maneira similar, adicionado outras 
requisições HTTP
JMeter + JSF 
S Um exemplo de Teste Completo no JMeter
JMeter + JSF 
S Conclusões 
S O JMeter é um ferramenta poderosa para realizar teste de 
performance do seu sistema 
S Existem centenas de outras opções que podem ser 
configuradas para testes mais complexos 
S É muito importante que pelo menos as operações mais 
utilizadas do seu sistema possuam testes de performance
Usando JMeter para 
testar sua aplicação JSF 
S 
Jadson Santos

Contenu connexe

Tendances

Tendances (20)

Performance testing using jmeter
Performance testing using jmeterPerformance testing using jmeter
Performance testing using jmeter
 
Teste de performance com JMeter: como criar e executar os testes em aplicaçõe...
Teste de performance com JMeter: como criar e executar os testes em aplicaçõe...Teste de performance com JMeter: como criar e executar os testes em aplicaçõe...
Teste de performance com JMeter: como criar e executar os testes em aplicaçõe...
 
Performance testing with Apache JMeter
Performance testing with Apache JMeterPerformance testing with Apache JMeter
Performance testing with Apache JMeter
 
2015-StarWest presentation on REST-assured
2015-StarWest presentation on REST-assured2015-StarWest presentation on REST-assured
2015-StarWest presentation on REST-assured
 
Pirâmide de testes mobile, dividindo seus testes de maneira efetiva
Pirâmide de testes mobile, dividindo seus testes de maneira efetivaPirâmide de testes mobile, dividindo seus testes de maneira efetiva
Pirâmide de testes mobile, dividindo seus testes de maneira efetiva
 
API Testing Using REST Assured with TestNG
API Testing Using REST Assured with TestNGAPI Testing Using REST Assured with TestNG
API Testing Using REST Assured with TestNG
 
Exemplo de Plano de testes
Exemplo de Plano de testes Exemplo de Plano de testes
Exemplo de Plano de testes
 
Azure DevOps - Um case de sucesso
Azure DevOps - Um case de sucessoAzure DevOps - Um case de sucesso
Azure DevOps - Um case de sucesso
 
Extent Test report v3 with Appium/Selenium
Extent Test report v3 with Appium/SeleniumExtent Test report v3 with Appium/Selenium
Extent Test report v3 with Appium/Selenium
 
Getting started with Spring Security
Getting started with Spring SecurityGetting started with Spring Security
Getting started with Spring Security
 
Automação de testes de API utilizando Postman
Automação de testes de API utilizando PostmanAutomação de testes de API utilizando Postman
Automação de testes de API utilizando Postman
 
Web Services PHP Tutorial
Web Services PHP TutorialWeb Services PHP Tutorial
Web Services PHP Tutorial
 
Presentation on Apache Jmeter
Presentation on Apache JmeterPresentation on Apache Jmeter
Presentation on Apache Jmeter
 
Performance Testing With Jmeter
Performance Testing With JmeterPerformance Testing With Jmeter
Performance Testing With Jmeter
 
Todas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilTodas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágil
 
Selenium WebDriver training
Selenium WebDriver trainingSelenium WebDriver training
Selenium WebDriver training
 
Karate DSL
Karate DSLKarate DSL
Karate DSL
 
TDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-AssuredTDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-Assured
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EE
 
testng
testngtestng
testng
 

Similaire à Usando JMeter para testar sua aplicação JSF

Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphi
hildebertomelo
 
18.ago topázio 14.30_389_aeselpa
18.ago topázio 14.30_389_aeselpa18.ago topázio 14.30_389_aeselpa
18.ago topázio 14.30_389_aeselpa
itgfiles
 

Similaire à Usando JMeter para testar sua aplicação JSF (20)

Testes de carga com j meter
Testes de carga com j meterTestes de carga com j meter
Testes de carga com j meter
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Treinamento: como usar o JMeter, interpretar resultados e otimizar a execução
Treinamento: como usar o JMeter, interpretar resultados e otimizar a execuçãoTreinamento: como usar o JMeter, interpretar resultados e otimizar a execução
Treinamento: como usar o JMeter, interpretar resultados e otimizar a execução
 
Testes de Performance com JMeter
Testes de Performance com JMeterTestes de Performance com JMeter
Testes de Performance com JMeter
 
Jmeter apresentacao
Jmeter apresentacaoJmeter apresentacao
Jmeter apresentacao
 
Abrindo a caixa de ferramentas: atirando pedras com Jmeter
Abrindo a caixa de ferramentas: atirando pedras com JmeterAbrindo a caixa de ferramentas: atirando pedras com Jmeter
Abrindo a caixa de ferramentas: atirando pedras com Jmeter
 
JavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoJavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em Desenvolvimento
 
Daw slide 06
Daw slide 06Daw slide 06
Daw slide 06
 
Utilizando JMeter para realizar testes de carga em aplicações WEB
Utilizando JMeter para realizar testes de carga em aplicações WEBUtilizando JMeter para realizar testes de carga em aplicações WEB
Utilizando JMeter para realizar testes de carga em aplicações WEB
 
J Meter
J MeterJ Meter
J Meter
 
Produtividade com JavaServer Faces
Produtividade com JavaServer FacesProdutividade com JavaServer Faces
Produtividade com JavaServer Faces
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphi
 
Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2
 
Comet - ReverseAjax com DWR - Resumo
Comet - ReverseAjax com DWR - ResumoComet - ReverseAjax com DWR - Resumo
Comet - ReverseAjax com DWR - Resumo
 
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
 
Testando aplicações DataSnap
Testando aplicações DataSnapTestando aplicações DataSnap
Testando aplicações DataSnap
 
Introdução aos Testes de Desempenho
Introdução aos Testes de DesempenhoIntrodução aos Testes de Desempenho
Introdução aos Testes de Desempenho
 
Stored Procedures and Triggers
Stored Procedures and TriggersStored Procedures and Triggers
Stored Procedures and Triggers
 
Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8
 
18.ago topázio 14.30_389_aeselpa
18.ago topázio 14.30_389_aeselpa18.ago topázio 14.30_389_aeselpa
18.ago topázio 14.30_389_aeselpa
 

Plus de Jadson Santos

A Deep Dive into Continuous Integration Monitoring Practices
A Deep Dive into Continuous Integration Monitoring PracticesA Deep Dive into Continuous Integration Monitoring Practices
A Deep Dive into Continuous Integration Monitoring Practices
Jadson Santos
 
Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...
Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...
Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...
Jadson Santos
 

Plus de Jadson Santos (19)

A Deep Dive into Continuous Integration Monitoring Practices
A Deep Dive into Continuous Integration Monitoring PracticesA Deep Dive into Continuous Integration Monitoring Practices
A Deep Dive into Continuous Integration Monitoring Practices
 
Containerizing a Web Application with Vue.js and Java
Containerizing a Web Application with Vue.js and JavaContainerizing a Web Application with Vue.js and Java
Containerizing a Web Application with Vue.js and Java
 
Continuous Delivery with Jenkins
Continuous Delivery with JenkinsContinuous Delivery with Jenkins
Continuous Delivery with Jenkins
 
Cd with Github Travis CI and Heroku
Cd with Github Travis CI and HerokuCd with Github Travis CI and Heroku
Cd with Github Travis CI and Heroku
 
Vue.js
Vue.jsVue.js
Vue.js
 
Jenkins Continuous Delivery
Jenkins Continuous DeliveryJenkins Continuous Delivery
Jenkins Continuous Delivery
 
Introduction to angular with a simple but complete project
Introduction to angular with a simple but complete projectIntroduction to angular with a simple but complete project
Introduction to angular with a simple but complete project
 
Hazelcast Distributed Lock
Hazelcast Distributed LockHazelcast Distributed Lock
Hazelcast Distributed Lock
 
Bootstrap
BootstrapBootstrap
Bootstrap
 
Testes Unitários
Testes UnitáriosTestes Unitários
Testes Unitários
 
Java8
Java8Java8
Java8
 
Gradle
GradleGradle
Gradle
 
Git
GitGit
Git
 
Introdução ao Flyway
Introdução ao FlywayIntrodução ao Flyway
Introdução ao Flyway
 
Mini curso gerenciamento de configuração e mudança com GIT + Eclipse - I...
Mini curso gerenciamento de configuração e mudança com GIT + Eclipse  -  I...Mini curso gerenciamento de configuração e mudança com GIT + Eclipse  -  I...
Mini curso gerenciamento de configuração e mudança com GIT + Eclipse - I...
 
Usando hiberante de forma otimizada
Usando hiberante de forma otimizadaUsando hiberante de forma otimizada
Usando hiberante de forma otimizada
 
ICEIS 2013 Presentation
ICEIS 2013 PresentationICEIS 2013 Presentation
ICEIS 2013 Presentation
 
Enums
EnumsEnums
Enums
 
Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...
Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...
Conditional Execution - A Pattern for the Implementation of Fine-Grained Vari...
 

Usando JMeter para testar sua aplicação JSF

  • 1. Usando JMeter para testar sua aplicação JSF S Jadson Santos
  • 2. JMeter + JSF S Testes de desempenho e estresse S Testam um sistema quanto aos seus requisitos de desempenho S Latência: tempo entre uma requisição e a resposta da operação S Vazão (throughput): o número de operações que o sistema é capaz de completar em um dado período de tempo S Escalabilidade: A quantidade de usuários simultâneos que o sistema pode lidar S Recursos: Processamento e Memória
  • 3. JMeter + JSF S JMeter S Testes de desempenho em aplicações cliente/servidor S Escrita em Java S Suporte a diversos protocolos: HTTP, JDBC, FPT, SOAP S Pode ser usada para testes funcionais S Possui várias asserções que podem ser usadas para verificar resultados das requisições
  • 4. JMeter + JSF S JMeter (instalação) S Baixar o arquivo em: S http://jmeter.apache.org/download_jmeter.cgi
  • 5. JMeter + JSF S JMeter (instalação) S Descompactar e executar o arquivo S bin/jmeter.bat (windows) ou bin/jmeter.sh (macOS/Linux)
  • 6. JMeter + JSF S JMeter componentes básicos: S Plano de Teste: Configurações do seu teste S Área de Trabalho: Área de armazenamento temporária S Grupo de Usuários: Grupo de usuários virtuais que serão os usuários que executarão os testes (cada usuário é uma thread criada pelo JMeter) S O JMeter funciona de forma hierárquica, o nó raiz é o plano de testes, abaixo dele vem o grupo de usuários, abaixo desse grupo os demais elementos. S O JMeter executa o plano de testes de acordo com a ordem desses elementos na árvore
  • 7. JMeter + JSF S Plano de Teste S Todo teste com JMeter possui um plano de testes
  • 8. JMeter + JSF S Grupo de Usuários S Para criar um teste deve-se obrigatoriamente adicionar um grupo de usuários ao plano de testes. S Adicionar -> (Threads) Users -> Grupos de Usuários
  • 9. JMeter + JSF S Grupo de Usuários S Na figura abaixo estamos configurando para 1000 usuários executarem o teste dento de 60 segundos com 1 repetição e os testes devem continuar caso algum dos usuários falhe S Todos os demais elementos do teste devem ficar dentro do Grupo de Usuários
  • 10. JMeter + JSF S Padrões de Requisição HTTP e Gerenciador de Cookie HTTP S Adicione ao grupo de usuários um padrão de requisições HTTP e um gerenciador de Cookie que limpe os cookies gerados, de forma que eles não atrapalhem o resultado do seu teste.
  • 11. JMeter + JSF S Padrões de Requisição HTTP S Adicionar -> Elementos de Configuração -> Padrões de Requisições HTTP S Gerenciador de Cookie HTTP S Adicionar -> Elementos de Configuração -> Gerenciador de Cookie HTTP
  • 12. JMeter + JSF S Integração com JSF S Para simular o parâmetro ViewState passado em toda requisição do JSF, adicione um extrator de expressão regular com os seguintes dados: S Adicionar –> Pós Processadores -> Extrator de Expressão Regular Nome de Referência jsfViewState Expressão Regular <input type="hidden" name="javax.faces.ViewState" id="javax .faces.ViewState" value="([^"]+)".*/> Modelo $1$ Número de 0 Combinações
  • 13. JMeter + JSF S Fluxo do seu teste S Para um teste simples, adicione um controlador lógico que executa uma única vez. S Adicionar -> Controlador Lógico -> Controlador de Uma Única Vez S Neste ponto a estrutura do seu teste deve está confirme a figura abaixo:
  • 14. JMeter + JSF S Requisições HTTP S A navegação pelas páginas JSF da aplicação é realizada por meio de requisições HTTP S Crie dentro do controlador uma requisição HTTP para chamar a página de login da sua aplicação S Adicionar -> Testador -> Requisição HTTP
  • 15. JMeter + JSF S Requisições HTTP S Adicione as seguintes informações à requisição HTTP: S Nome do Servidor ou IP: localhost S Porta: 8080 S Implementação: Java S Protocolo: Http S Método: GET S Caminho: adicione o caminho para a página JSF de login, a partir do contexto do sistema
  • 16. JMeter + JSF S Requisições HTTP S Ao mandar executar o teste, conforme foi configurado no grupo de usuários, 1000 requisições em 1 minuto serão feitas a essa página
  • 17. JMeter + JSF S Testando o Login S A próxima ação que o usuário realiza após acessar a página de login é digitar o usuário e a senha e realizar o login. S Para simular esse comportamento, crie outra requisição HTTP
  • 18. JMeter + JSF S Testando o Login S Digite as mesmas informações utilizadas na 1ª requisição à tela de login (é possível duplicar as informações de outro elemento no JMeter). S A única diferença é que para simular uma ação JSF é preciso mudar o método da requisição HTTP de GET para POST. S Em seguida, deve-se digitar os parâmetros da requisição que serão os dado passados ao servidor para executar a ação de logar no sistema
  • 19. JMeter + JSF S Testando o Login S Os três parâmetros abaixo são os valores dos parâmetros passados pelo JSF em toda requisição realizada S Então eles são obrigatórios em toda requisição HTTP criada no JMeter para realizar o teste de performance do seu sistema. Nome Valor Codificar myForm%3A_SUBMIT 1 false myForm%3A_link_hidden_ false javax.faces.ViewState ${jsfViewState} S jsfViewState é a variável criada no extrator de expressão regular, como esse extrator está definido dentro do mesmo grupo de usuários, ela é enxergada pela sua requisição HTTP
  • 20. JMeter + JSF S Testando o Login S Após isso, deve-se informar os parâmetros que seriam os dados digitados pelo usuário. Sendo que o formulário a ser submetido deve estar entre os parâmetros Nome Valor Codificar myForm myForm false myForm:inputLogin joao true myForm:inputSenha 123 true myForm:buttonLogar myForm:buttonLogar true S Codificar = true pode usar o “:” no id do campo S Codificar = false deve-se digitar “%3A” em vez do “:”
  • 21. JMeter + JSF S Testando o Login S Uma maneira de saber quais são os parâmetros a serem informados é executar a ação pelo navegador utilizando o FireBug ( https://getfirebug.com/ ) S Pelo FireBug, na aba Redes -> Clicar na página principal requisitada -> Postar S Aparecem os parâmetros que o JSF passa ao executar a ação. São os mesmo parâmetros que devem ser informados no JMeter.
  • 22. JMeter + JSF S Testando o Login (visualizando os parâmetro da requisição pelo FireBug)
  • 23. JMeter + JSF S Testando o Login S Uma boa prática de programação é colocar um “id” em todos os campos das páginas JSF. S Essa prática também irá ajudar a identificar os parâmetros necessário na requisição. Veja abaixo uma página JSF sem ids como fica difícil de interpretar:
  • 24. JMeter + JSF S Visualizando os resultados S Para ajudar a analisar os resultados do teste, existem vários “ouvintes” que podem ser adicionados ao grupo de usuários. S Adicionar -> Ouvintes -> Gráfico de Resultados S Nesse gráfico é possível ver entre outra medidas: vazão, tempo médio das requisições, etc
  • 25. JMeter + JSF S Visualizando os resultados por meio de um Gráfico de Resultados
  • 26. JMeter + JSF S As requisições as demais páginas do sistema podem ser simuladas de maneira similar, adicionado outras requisições HTTP
  • 27. JMeter + JSF S Um exemplo de Teste Completo no JMeter
  • 28. JMeter + JSF S Conclusões S O JMeter é um ferramenta poderosa para realizar teste de performance do seu sistema S Existem centenas de outras opções que podem ser configuradas para testes mais complexos S É muito importante que pelo menos as operações mais utilizadas do seu sistema possuam testes de performance
  • 29. Usando JMeter para testar sua aplicação JSF S Jadson Santos