2010-07-27 24 views
5

Cuando realizo una solicitud HTTP en JMeter obtengo datos de respuesta como "Esta página usa JavaScript y requiere un navegador habilitado para JavaScript". ¿Cómo es posible solucionar este problema?JMeter y JavaScript

Respuesta

13

JMeter no es un navegador y no interpreta el JavaScript en las páginas descargadas.

Desde el JMeter wiki:

JMeter no procesa Javascript o applets incrustados en páginas HTML.

JMeter puede descargar los recursos relevantes (algunos recursos incrustados se descargan automáticamente si se establecen las opciones correctas), pero no procesa el HTML ni ejecuta ninguna función de Javascript.

Si la página utiliza Javascript para crear una URL o enviar un formulario, puede usar la función de Grabación Proxy para crear la muestra necesaria. Si esto no es posible, entonces la inspección manual del código puede ser necesaria para determinar qué está haciendo el Javascript.

Dependiendo de lo que esté haciendo, puede crear una prueba de ejecución usando Selenium IDE para Firefox. La prueba se ejecutará en su navegador para que el JavaScript también se ejecute. Sin embargo, tenga en cuenta que nunca usé Selenium como sustituto de JMeter y no conozco las funciones comunes a ambas herramientas.

+0

que utiliza grabación proxy y puedo ver la variable que entré pero en respuesta me sale ese mensaje, también este mensaje es el mismo que cuando corro en Firefox con deshabilitar JavaScript. ¿Es posible probar esta aplicación con JMeter? – Gogoo

+1

Realmente depende de lo que está probando. JMeter fue creado inicialmente para probar la funcionalidad del servidor (bajo carga pesada, por rendimiento, tiempo de respuesta, etc.). Si JavaScript solo se usa para efectos de la GUI que no interactúan con la funcionalidad de la aplicación (es decir, para hacer que se vea elegante), entonces puede usar JMeter para probar esa funcionalidad, evitando el mensaje que recibe (debe ser un filtro de algunos ordenar en su aplicación que las pruebas de JS habilitado que puede apagar). Si, por otro lado, JavaScript es imprescindible, entonces necesitas capacidades de navegador y JMeter no (al menos aún) las proporciona. –

-4

Debe agregar HTTP Cookie/Cache Manager a su hilo para resolver esto.

+2

Esta respuesta es completamente inválida y engañosa – rsakhale

1

Supongo que puede usar el complemento WebDriver para ejecutar pruebas reales del navegador (IE/Firefox/Chrome/Selenium).

hay buena documentación here

0

Puede add WebDriver to JMeter test para evaluar plenamente la prestación página.

Web Driver Sampler automatiza la ejecución y la recopilación de Métricas de rendimiento en el navegador (del lado del cliente). Una gran parte de las pruebas de rendimiento , hasta este punto, ha estado en el lado del servidor de cosas. Sin embargo, con el avance de las mejoras tecnológicas, HTML5, JS y CSS , cada vez más lógica y comportamiento se han reducido al cliente . Esto se suma al rendimiento general percibido del sitio web/webapp , pero esta métrica no está disponible en JMeter. cosas que se suman al tiempo total de ejecución del navegador pueden incluir:

  1. -lado del cliente la ejecución de Javascript - por ejemplo. Plantillas AJAX, JS
  2. Transformaciones CSS, p. Ej. Transformaciones de matriz 3D, animaciones
  3. Complementos de terceros, p. Ej. Facebook como, anuncios de doble clic, análisis de sitios, etc

Todas estas cosas agregan a la hora de ejecución global del navegador, y este proyecto tiene como objetivo medir el tiempo que tarda en completar y prestarán toda la este contenido.

guía oficial: https://jmeter-plugins.org/wiki/WebDriverTutorial/

Cuestiones relacionadas