Pergunta

Uma pergunta semelhante já foi pedido ( Realizar um teste de estresse em Aplicação Web? ), mas eu 'd como para testar um aplicativo web que impede double-sustenta e toma algumas ações contra-XSRF e, portanto, requer JavaScripts a ser avaliadas.

Alguém tem feito testes de estresse com aplicações web que exigem (e uso) JS e qualquer experiência para partilhar?

jMeter não iria funcionar eu acho ...

Obrigado!

Foi útil?

Solução

Watir ?

Watir é uma biblioteca de código aberto simples para automatizar navegadores web. unidades Watir navegadores da mesma maneira que as pessoas fazem. Ele clica em links, preenchimentos de formulários, prensas botões. Watir também resulta cheques, tais como se aparece texto esperado na página.

Dirige Internet Explorer, mas também é funcional com o Firefox (e Safari até certo ponto).

Outras dicas

O problema com Watir e Selenium RC ou qualquer outra solução navegador completo é que eles precisam de um navegador completo: P

Os navegadores são muito caros para correr, muitas vezes necessitando de 300MB ou mais de RAM. Multiplique esses requisitos pelo mesmo 100 e você precisa de hardware maciça. Felizmente, há uma solução:. Eu comecei recentemente uma empresa que faz exatamente o que você está procurando

Confira http://browsermob.com e você pode executar um teste limitado (até 25 usuários) para ter uma ideia para o aplicativo. Sinta-se livre para contactar-nos se você tiver quaisquer perguntas em tudo!

Uma solução que pode ser vale a pena perseguir é executar Selenium no Amazon EC2 para fornecer a escalabilidade de que necessita. Há um tutorial sobre a selênio usando uma amostra que vem com grade de selênio. máquinas Windows são 12,5 centavos por hora para uma pequena máquina que significa que um teste de máquina 500 vai custar US $ 62,50 por hora.

PRÓS:

  • O selênio é executado em um navegador real o que significa que o Javascript está em execução como seria em um cliente
  • Baixo custo - tentar fazer isso em seu próprio hardware custaria significativamente mais

CONS:

  • Você teria que estabelecer a conectividade de rede da Amazon para a sua aplicação

Os testadores que trabalham com o uso Bad Boy para testes de carga. Estou bastante certo de que você pode testar interações que o uso de javascript, então você deve ser capaz de coisas teste como double-sustenta.

Tanto quanto o seu backend está em causa, não importa o que desencadeia um pedido se é de JavaScript ou uma ferramenta de teste de carga, desde que o pedido é válido .

Você pode criar um monte de falsos pedidos que fazer muitas coisas diferentes (espero representativas dos padrões de utilização reais) e bater seu servidor web com uma ferramenta de teste de carga.

Há um monte lá fora:

  • jMeter
  • http_load
  • Grinder
  • httpperf

Porque JMeter não é um navegador, ele não irá interpretar o código JavaScript na página que você recebendo:

JMeter não processa Javascript ou applets embutidos em páginas HTML. [JMeter Wiki]

Então, o que você pode fazer? Você pode adicionar WebDriver para JMeter teste e por isso, avaliar as páginas da web.

Web Motorista Sampler automatiza a execução e recolha de métricas de desempenho no navegador (client-side). Uma grande parte do testes de desempenho, até este ponto, foi no lado do servidor de coisas. No entanto, com o avanço da tecnologia, HTML5, JS e CSS melhorias, mais e mais lógica e comportamento foram empurrados para baixo para o cliente. Isso aumenta o desempenho geral percebida de site / webapp, mas essa métrica não está disponível em JMeter. Coisas que contribuem para o tempo total de execução do navegador podem incluir:

  1. JavaScript do lado cliente execução - por exemplo. AJAX, JS modelos
  2. transforma CSS - por exemplo. transformadas matriz 3D, animações
  3. plugins 3rd party - por exemplo. Facebook como, anúncios duplo clique, análise do site, etc

Todas estas coisas acrescentar ao tempo total de execução do navegador, e este objetivos do projeto para medir o tempo que leva para toda a renderização completa este conteúdo.

Guia Oficial: https://jmeter-plugins.org/wiki/WebDriverTutorial/

Eu tentei Badboy que é OK. O grande, gordo, ferramenta pesada é SilkTest. Ele requer um monte de programação para se levantar e correr, mas você pode obter algo muito sólido done!

Se você só precisa de solicitação de teste de estresse de exemplo arquivos de log do IIS, eu tenho uma ferramenta de compilação personalizada. Vou publicá-lo no CodePlex muito em breve.

Selenium RC é outra alternativa.

Também relacionados, confira o meu artigo recente sobre Ajaxian. Eu acho que ele faz um bom trabalho de explicar por navegadores reais fazem a matéria e por isso a execução de JavaScript está se tornando mais importante para o teste de carga.

http://ajaxian.com/archives/why-load -Teste-ajax-é-hard

Há uma nova ferramenta nesta área chamado K6

tem uma maneira de acessar o DOM, e eu estou planejando para experimentá-lo em um projeto.

história de fundo:

Você pode visitar este e este blog.

talvez ele vai ajudar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top