Performance Testing con JMeter: Paso por Paso para grabar escenarios


En esta segunda Parte de «JMeter: Performance Testing con JMeter» vamos a ver como utilizar JMeter para GRABAR escenarios.

La idea es profundizar el documento oficial de JMeter que pueden encontrar en la web oficial llamado «JMeter Proxy step by step«.

Primero que todo cabe aclarar que como lo que el Proxy hace es grabar los requests que son enviados al servidor no pueden ser grabados aquellos request que utilicen HTTPS, ya que como el HTTPS es seguro, el Proxy no puede decodificar el trafico y grabar los parámetros o coockies que maneje el servidor. Para estos casos les recomiendo utilizar Bad Boy la cual es una herramienta gratis y muy fácil de utilizar (Luego de grabar el escenario tiene la opción de exportar a JMeter 😉 ).

Para facilitar el entendimiento y escritura de esta guía vamos a dividirla en 2 partes:

  • Paso por Paso para grabar escenarios
  • Profundizando los controles utilizados

Paso por Paso para grabar escenarios

Primero que todo necesitamos ejecutar JMeter, para esto ejecutamos el archivo jmeter.bat (requerimientos de JMeter) que se encuentra en la carpeta bin. Una vez que ya tenemos JMeter corriendo los pasos son los siguientes:

  • Seleccionamos el Plan de Pruebas (Test Plan) y con click derecho seleccionamos Añadir (add) para luego seleccionar el elemento que estamos buscando: Grupo de Hilos (Thread Group)

Plan de Pruebas->Añadir->Grupo de Hilos

  • Seleccionamos el Grupo de Hilos (Thread Group) y con click derecho seleccionamos Añadir-> Elementos de Configuración para elegir el control Valores por Defecto para Petición HTTP (Http Request Defaults)

Grupo de Hilos->Añadir->Elementos de Configuración->Valores por Defecto para Petición HTTP

  • Nos posicionamos en el control Valores por Defecto para Petición HTTP (Http Request Defaults) para ingresar la información sobre nuestro ambiente de pruebas (la mas básico):
    • Protocolo: ingresamos el protocolo utilizado por la aplicación donde se realizaran las pruebas (por default es HTTP)
    • Nombre de Servidor o IP: nombre o IP del servidor donde corre la aplicación.
    • Puerto: Puerto por el cual se accede a la aplicación (al valor que ingresemos aquí lo vamos a llamar Puerto de la aplicación

En este control podemos utilizar los siguientes valores para realizar una prueba simple:

Nombre de Servidor o IP: jakarta.apache.org

Puerto: 8080

Ejemplo de como quedaria para probar contra la pagina de JMeter
Ejemplo de como quedaría para probar contra la pagina de JMeter
  • Seleccionamos el Banco de Trabajo (Workbench) y con click derecho seleccionamos Añadir-> Elemento NodePrueba para luego seleccionar el elemento que estamos buscando: Servidor Proxy HTTP (Http Proxy Server).

Banco de Trabajo->Añadir->Elemento NodePrueba->Servidor Proxy HTTP

  • Seleccionamos el Servidor Proxy HTTP (Http Proxy Server) y lo configuramos para nuestras pruebas:
    • Puerto: Puerto que vamos a capturar para realizar la grabación (ingresamos el Puerto de la aplicación)
    • Controlador Objetivo: Seleccionamos el destino de todos los HTTP Request que se crearan durante la grabación del escenario. (seleccionamos la opción: «Plan de Pruebas->Grupo de Hilos»)
    • Agrupación: Esta opción determina como quedaran agrupados los HTTP Request que se crearan durante la grabación del escenario.
      (Dejamos la opción por default: «No agrupar Muestradores»)
    • URL Patrones a Excluir: esta lista de expresiones regulares nos permite excluir los HTTP Request que no son relevantes para las pruebas y que por lo tanto no queremos grabar. Hacemos click en Añadir los que nos creara una linea en blanco donde escribimos el patrón a excluir por medio de una expresión regular.
      • Lo mas utilizado es:
        • .* : indica que filtrara todo
        • \.gif: indica que filtrara todo string que termine en .gif
      • Esto nos deja la siguiente lista de patrones a excluir:

.*\.gif
.*\.png
.*\.jpg
.*\.png
.*\.css
.*\.js

Claro esta, que estos patrones van a variar dependiendo de la aplicación que queremos testear.

Ejemplo de como quedaria el control Servidor Proxy

  • El siguiente paso es configurar el explorer para poder realizar la grabación, para esto abrimos el navegador y vamos a Tools->internet Options->Connections->LAN Settings. En la seccion Proxy Server tildamos el check y escribimos en los campos:
    • Address: localhost
    • port: Puerto de la aplicación (por ejemplo 8080)

    Configuración del Explorer
    Configuración del Explorer
  • Aplicamos la nueva configuración ingresada. Si bien no es necesario, podemos ingresar la dirección de nuestra aplicación como pagina de inicio del navegador para arrancar la grabación apenas abramos este.

Una vez configurado JMETER y el Explorer (puede usarse cualquier navegador, solo es necesario configurar el proxy del mismo) vamos a JMeter y en el control Servidor Proxy HTTP presionamos el botón Arrancar y luego ingresamos la dirección de la aplicación en nuestro navegador (por ejemplo «http://jakarta.apache.org/jmeter/index.html«).

Recorremos las pantallas de nuestra aplicación según el escenario a grabar y cuando terminamos vamos a JMeter y presionamos el botón Parar.

Importante: No te olvides de sacar el Proxy en el navegador ya que si JMeter no esta corriendo y sigue activado el proxy no podrás navegar.

Luego de detener el proxy el Test Plan se parece a esto:

Asi se veria nuestro Test Plan luego de recorrer algunas paginas

Con los pasos previos ya tenemos grabado nuestro escenario de pruebas. El próximo paso es agregar Listener para verificar el correcto funcionamiento del mismo.

  • Seleccionamos el Grupo de Hilos (Thread Group) y con click derecho seleccionamos Añadir-> Listener->Ver Árbol de Resultados.
  • En el Grupo de Hilos (Thread Group) dejamos los valores que vienen por default. (1 usuario que ingresa una vez luego de 1 segundo)
Configuración por default del Grupo de Hilos
Configuración por default del Grupo de Hilos

El ultimo paso es correr el escenario para luego verificar los resultados. Podemos iniciar la corrida con CRT + R o ingresando en Lanzar->Arrancar.

Mientras JMeter este corriendo podemos observar el indicador en el margen superior derecho que indica el estado «corriendo» cuando esta en verde y «detenido» cuando esta en gris junto con la cantidad de VU que esta corriendo sobre el total (cantidad actual de VU/total de VU)

Indicador de que JMeter esta ejecutando el escenario
Indicador de que JMeter esta ejecutando el escenario

Luego de que JMeter se detenga seleccionamos el arbol de resultados y observamos si la prueba fue exitosa o no, para saber eso solo basta con que cada request tenga un triangulo verde en la parte izquierda del control:

Se observa que el escenario grabado funciona correctamente
Se observa que el escenario grabado funciona correctamente

En próximas entradas vamos a profundizar acerca del funcionamiento de cada control y como optimizar el Test Plan.

Como un adicional a esta entrada les agrego 2 videos:

Esos son vídeos que subí a you tube, espero que les ayude con JMeter.

Te gustó el post? Quieres contribuir? Contribute with the Blog

114 comentarios sobre “Performance Testing con JMeter: Paso por Paso para grabar escenarios

    1. Jorge,

      Gracias por comentar en el blog.
      Te cuento que es bastante dificil ayudarte sin conocer muy bien el contexto en el que estas trabajando pero igualmente te diria que le prestes atencion al tema de las variables de sesiones ya que en aplicaciones .NET suele ser un problema muy comun.

      Puedes comunicarte por mail si necesitas mas ayuda.

      Saludos,

      Jose

      Me gusta

  1. Hola, necesitaría ayuda para configurar Jmeter para una aplicación desarrollada en .net, paso a explicar. Yo la aplicación la corro localmente, configure un puerto determinado en el servidor de proxy http para que use a jmeter en que puerto escuchara(2611), la configuración del explorador esta en localhost y el puerto 2611, los valores por defectos para una peticion http también esta configurada de la misma manera. La aplicación corre correctamente usando a jmeter de proxy, pero no captura nada en la consola de jmeter. Ya hice pruebas en java para otros proyecto y quisiera usarla para .net. Me podrías decir que me falta para que jmeter capture las url?

    Me gusta

    1. Matias,

      Para estos casos te recomiendo que pruebes deteniendo el JMeter Proxy, si puedes seguir navegando la aplicación es porque hay algún parámetro mal configurado y no esta funcionando el JMeter Proxy, entonces JMeter no va a poder grabar nada.

      Si sigues con problemas no dudes en enviarme un mail.

      Saludos.

      Me gusta

      1. Estimados, necesito sabes como hacer un data pool hacia un http request de una grabacion. Para los que no me entiendan es lo mismo que sale en la carpta bin/example de la carpeta raiz de JMeter. ahi se ejecuta ok. pero que campos debo cambiar para hacerlo correr enen una grabacion.
        Agredecer me orienten en este sentido, me falto indicar que trabajo con http request y con archivos CSV.
        Muy bueno el foro, muy util a los que trabajamos en esto. que tengas buen día.

        Me gusta

  2. Buenos días,

    Estoy realizando unas pruebas de carga de peticiones SOAP, y dentro del BODY existe un parámetro que es el MSISDN, para lo que tengo asignado un rango (0-1000), como puedo hacer (si es que el Jmeter permite) incrementar el número de MSISDN por cada ejecución??? , es decir, si lanzo 50 peticiones al segundo cada una deberá de ir con un MSISDN distinto.

    GRacias por adelantado.

    Me gusta

    1. Hola Eduardo,

      Para realizar lo que me preguntas debes incluir en tu Test Plan el elemento de configuracion llamado «Counter», el mismo te permite crear una variable la cual podrás usar de contador y la cual sera controlada por JMeter.

      Para ser mas claros, te paso como seria la configuración para tu caso:

      Name: MSISDN
      Start: 0
      Increment: 1
      Maximun: 1000
      Number Format: 000
      Reference Name: msisdn

      Cuidado con los parámetros «Name» y «Reference Name» ya que el primero solo es el nombre que le damos al control dentro del Test Plan y el segundo es el nombre de la variable que vamos a usar, es decir, la llamaremos ${msisdn} en nuestros envios al servidor.

      Por las dudas te paso el link de JMeter a este elemento:
      http://jakarta.apache.org/jmeter/usermanual/component_reference.html#Counter

      Espero que sea de ayuda mi respuesta.

      No dudes en preguntar si tienes algún problema.

      Saludos,

      Jose

      Me gusta

  3. Hola Jose,

    Gracias por tu respuesta.

    De todos modos también lo he conseguido de la siguiente forma:

    En la pestaña Petición HTTP, hemos creado una variable sólo del dato que queremos implementar, tomando como referencia un carácter que no cambie y se pueda identificar detro del «body», así:

    gt;${numero}

    En la pestaña Contador, opción Nombre de Referencia, añadimos el nombre dada a la variable.

    numero

    Con esto conseguimos que incremente sólo el dato que queremos.

    Ya que estamos otra preguntilla por si supieras,

    ¿Existe alguna posibilidad de que Jmeter lance peticiones Diameter?

    Gracias
    Saludos

    Saludos.

    Me gusta

  4. Buenas de nuevo Jose,

    Otra pregunta sobre la herramienta Jmeter.

    Se puede configurar de tal forma una prueba, que diferencie en algún contador/comentario… dentro de la respuesta 200 OK diferentes datos en un mismo campo?
    , es decir, se recibe 200 Ok Http a una petición Get, y me en el campo Result se puede recibir diferentes valores como 0, 2011, 2015, etc…

    Eso es lo que pretendo, diferenciar las respuestas que me llegan, no sólo Fail y Pass.

    Gracias por adelantado.

    Saludos.

    Me gusta

    1. Eduardo,

      Si entiendo tu pregunta, creo que te refieres a validar el response code de una petición, para eso puedes utilizar alguna assertion:
      http://jakarta.apache.org/jmeter/usermanual/component_reference.html#Response_Assertion

      si te refieres a capturar todos los response code que tienen las petiones podrias utilizar un extractor de expresiones regulares y guardar esos valores en variables.

      Espero que sea de ayuda la data.

      Saludos,

      Jose

      Me gusta

  5. Buenos dias Jose!
    Queria hacerte una consulta. En mi trabajo estamos empezando a usar Jmeter para automatizar pruebas y para realizar pruebas de stress.
    Sabes alguna forma en la cual pueda grabar los resultados en un SQL Server?
    Por ejemplo, hay funcionalidades de la pagina WEB que utilizamos que, obviamente, insertan datos en la base de datos. Yo estuve probando realizar esas acciones con el Jmeter pero no me inserta ningún registro en la base. No se a que se puede deber.
    Navegando por ahi, vi algunas formas de grabar los resultados en MySQL, pero no encontre de SQL Server o no se si sería la mismo.

    Desde Ya muchas gracias.

    Sldos,
    Lucas.-

    Me gusta

    1. Hola Lucas,

      Gracias por comentar en el blog, espero que sea de utilidad la información que aquí encuentras.

      JMeter solo graba el trafico HTTP con el control HTTP Proxy, por lo que tendrias que grabar tu escenario con JMeter y manualmente agregar los Peticiones JDBC (http://jakarta.apache.org/jmeter/usermanual/component_reference.html#JDBC_Request) y la configuracion de la conexion a la base de datos (http://jakarta.apache.org/jmeter/usermanual/component_reference.html#JDBC_Connection_Configuration) a tu test plan si quieres agregar métricas sobre el comportamiento de la base de datos.

      Si solo te interesa que se ejecute el camino y ver reflejados los datos en la base de datos, con la grabación, mejora y ejecución del escenario debería alcanzar. Si no ves los datos reflejados en la base después de correr la prueba es porque tiene que haber algún error en tu script.

      Espero que sea de ayuda la respuesta.

      Saludos,

      Jose

      Me gusta

  6. Hola Jose.
    Gracias por la completa información q he encontrado googleando JMeter ; )

    Tengo problemas al ejecutar los hilos probando una aplicación en la q se necesita estar logado. Consigo cazar todas las peticiones http correctamente configurando los valores q tiene q poner para loguearse; pero en el muestreador de resultados al lanzar las pruebas me aparece el siguiente error.
    Response code: 500
    Response message: Internal Server Error

    He añadido por si acaso un gestor de cookies indicando q las limpie en cada iteración.

    Alguna sugerencia?

    Gracias y un saludo,
    Pili

    Me gusta

    1. Hola Pili,

      Esta bien lo de agregar el cookie manager como para ir buscando una solución al problema. Deberías verificar si la aplicación utiliza variables de sesión, comúnmente la variable utilizada se llama JSESSIONID, también deberías verificar que no haya alguna otra variable que necesite ser correlacionada, en aplicaciones .NET comúnmente existe la variable View_State que suele complicar las cosas en los scripts de JMeter. Si no es ninguno de los casos te pediría que me mandes más información por medio de mail ;).

      Si el problema es el JSESSIONID, debes agregar el pre procesador HTTP URL Re-writing Modifier:


      http://jakarta.apache.org/jmeter/usermanual/component_reference.html#HTTP_URL_Re-writing_Modifier

      Si el problema es con alguna variable que no esta siendo correlacionada correctamente, deberías agregar un extractor de expresiones regulares:

      https://josepablosarco.wordpress.com/2009/06/24/extractor-de-expresiones-regulares/

      Espero que sea de ayuda la respuesta.

      Saludos!

      Me gusta

      1. Gracias por la respuesta, al final he tenido q ponerme con otro tema y he dejado de lao ésto. Cuando lo configure te saco de dudas, pero tiene buena pinta lo que cuentas.
        Gracias de nuevo!

        Me gusta

  7. Hola Jose,

    Estoy empezando con Jmeter y tengo una duda acerca del lanzamiento de las pruebas. Una vez he grabado toda la navegación, tengo en el mismo plan de pruebas diferentes funcionalidades grabadas, es decir, he grabado tres navegaciones distintas, se lanzan de forma secuencial o se pueden lanzar todas al mismo tiempo, es decir, concurrentemente, me refiero a que una vez lance las pruebas, puedo hacer que se este accediendo a las tres al mismo tiempo.

    Gracias. Un saludo.

    Me gusta

    1. Antonio,

      Dependiendo de como tengas estructurado tu Test Plan puedes correr distintos caminos de manera secuencial o paralela. Por como describes tu Test Plan supongo que tienes las tres navegaciones distintas bajo el mismo grupo de hilos, por lo que en ese caso las pruebas se pueden correr solo secuencialmente ya que dentro de un mismo grupo de hilos la ejecucion se realiza de manera secuencial.
      Lo recomendado seria tomar esas tres navegaciones distintas y ubicarlas en tres grupos de hilos distintos con su configuración correspondiente, luego puedes seleccionar la opción «Lanza cada grupo de Hilos separadamente» en el elemento Test Plan que te permite correr grupos de hilos de manera secuencial(check Activado) o paralela(check Desactivado).

      Espero que la respuesta sea de ayuda.

      Saludos,

      Jose

      Me gusta

      1. Muchas gracias Jose.

        Eso es. Voy a tener que hacer distintos Threads Groups, y luego decirle que ejecute los grupos de forma paralela, para que se estén probando todas las navegaciones al mismo tiempo.

        Gracias. Un saludo.

        Me gusta

    1. Hola Nencer,

      El analisis de los resultados de las pruebas de performance no depende de la herramienta que utilices, solo depende del conocimiento sobre Performance en sí. Los resultados de JMeter son resultados basicos(en cuanto a que no son lindos graficos) pero completos desde la mirada de pruebas de performance.

      Te recomiendo que leas un poco mas en el blog sobre Performance en gral (no esta todo pero algo hay) y si te manejas con el ingles mires esta guia que es muy completa.

      Espero que sea de ayuda.

      Saludos,

      José

      Me gusta

  8. Hola José,

    Tengo una duda acerca de los usuarios a simular, te explico, tengo dos Thread Groups creados, cada uno con una aplicación distinta a simular de forma concurrente, ahora lo que quiero es que cada una tenga sus propios usuarios, tengo que crear un fichero users.xml para cada uno(pero con distinto nombre), o en el mismo fichero se puede especificar para los dos Threads Groups. O hay alguna forma mejor de asignar esos users a cada Thread Group.

    Gracias.

    Me gusta

    1. Hola Antonio,

      La verdad que el HTTP User Parameter Modifier es un elemento en desuso ya que puede ser reemplazado por CSV Data Set Config o por User Parameters dependiendo de la cantidad de usuarios que ingreses en tus pruebas.
      Para el contexto que planteas y suponiendo muchos usuarios te recomiendo que ubiques un elemento CSV Data Set Config en la misma jerarquía que los grupos de hilos y este se encargará de distribuir los usuarios del CSV en los grupos de hilos. El archivo CSV con los usuarios debe estar en la misma carpeta del script.
      Otra posibilidad es la de incluir un CSV Data Set Config en cada grupo de hilos con el nombre correspondiente.

      Mas info:
      http://jakarta.apache.org/jmeter/usermanual/component_reference.html#CSV_Data_Set_Config

      Espero que sea de ayuda la info.

      Saludos,

      Jose

      Me gusta

  9. Hola, tengo un problema despues de haber configurado todo como se muestra en el ejmplo intento acceder a la aplicación que quiero probar pero me sale un herror de PHP al parecer el JMETER no esta redireccionando al servidor donde se encuentra la aplicación a probar, cabe resaltar que esta utiliza tomcat.

    Me puedes ayudar?

    Gracias

    Me gusta

  10. Hola
    Antes de nada felicidades por tu video en youtube. Es de gran ayuda.
    Estoy empezando a utilizar Jmeter, pero el poblema que tengo es que no se interpretar los datos una vez lanzada la prueba. Tienes algún manual en castellano?
    muchas gracias

    Me gusta

    1. Fernando,

      La interpretación de los resultados es la parte mas importante de las pruebas de performance, lo que la hace también la mas difícil ya que en esa etapa se requiere de conocimientos estadísticos y mas que nada de experiencia. Por el momento no conozco ningún tipo de documentación en castellano que te pueda ayudar pero si hay mucho en ingles:

      http://www.codeplex.com/PerfTestingGuide/Release/ProjectReleases.aspx?ReleaseId=6690
      http://www.sqaforums.com/showflat.php?Cat=0&Number=41861

      Saludos,

      José

      Me gusta

  11. Hola que tal estoy realizando unas pruebas para una pagina por lo cual usare servidor proxy http mi duda es si puedo variar los datos de entrada cuando no sea un text box es decir algun combo box que despliegue 3 o mas registros y si es posible que haga convinaciones entre si el propio sistema por ejemplo
    imaginemos que lo siguiente son 3 combobox

    chq MXN Mexico
    tdc DLR Tijuana
    San luis potosi

    es dicir que el sistema haga la busqueda seleccionando chq MXN Mexico posteriormente en otra prueba sea chq MXN Tijuana despues chq MXN San luis potosi y asi sucesivamente hasta que logre hacer las convinaciones de todos de antemano muchas gracias

    Saludos

    Me gusta

    1. Hola Renesito,

      Lo que tendrias que hacer es grabar el escenario, parametrizar aquellos valores que requieran de correlacion y luego elegir una estrategia para variar solo ese parametro en la ejecucion del test. De manera rapida te puedo aconsejar varias opciones (verificalas y selecciona la que mejor se adapte a tus requerimientos)
      – Agregar 3 variables definidas por el usuario(en el Test Plan) llamadas var_1, var_2, var_3 cada uno con un valor diferente, luego agregar un Controlador Logico ForEach (Entrada: var; Salida: var), bajo la jerarquia del ForEach debes tener tu escenario donde el request que envia los parametros del combo tendra como valor ${var}. Esto ejecutara 3 veces el escenario donde cada uno tendra valores diferentes.
      Te queda:
      Test Plan
      Thread Group
      ForEach
      Request 1
      Request 2

      Request n
      -Agregar un Controlador Loop con contador igual a 3 que contenga todos los requests, luego agregar un elemento de Configuración del CSV Data Set que apunte a un archivo CSV con las tres opciones deseadas. Esto ejecutara 3 veces el escenario donde cada uno tendra valores diferentes.
      Te queda
      Test Plan
      Thread Group
      Loop
      CSV Data
      Request 1
      Request 2

      Request n

      Seguro que existen otras formas de hacerlo, esto es solo una respuesta rapida a tu pregunta sin conocer mucho sobre el contexto en que estas trabajando.

      si sigues teniendo problemas recurre al foro QA Latinoamerica

      Saludos,

      Jose

      Me gusta

  12. Hola buen dia.

    Que tal una preguntota como hago que entre hilos se detenga al realizar la prueba es decir que primero ejecute el primer hilo y cuando acabe ejecute el segundo y asi consecutivamente gracias.

    PD. gracias por la respuesta pasada

    saludos cordiales

    Rene Godinez

    Me gusta

    1. Para eso solo tienes que posicionarte sobre el elemento Test Plan y tildar el checkbox que indica «Lanza cada Grupo de Hilos separadamente (i.e. lanza un grupo antes de lanzar el siguiente)»
      Para el caso en que quieras correr secuencialmente los hilos dentro de un mismo grupo de hilos debe determinar un periodo de ramp up tal que esto suceda…..

      Saludos,

      José

      Me gusta

  13. Hola jose.

    de hecho es lo que hice pero aun asi la aplicacion me sigue enviando los threads uno tras otro enviando varios al mismo tiempo crasheando mi aplicacion, hay otra forma de lograrlo digamos declarando un ciclo o con algun controlador.

    gracias

    Saludos

    Rene Godinez
    PD. no quieres trabajar en Scotiabank

    Me gusta

    1. Rene,

      Cual de las dos opciones utilizaste????
      – Varios grupos de hilos lanzados secuencialmente (marcando el check)
      – Un mismo grupo de hilos, 1 hilo entrando cada x segundos de manera tal que no entren de manera concurrente
      – Otra opción, introducir un controlador de runtime poniendole un limite en tiempo de corrida al hilo para asegurarte de que solo haya 1 solo corriendo..

      Saludos,

      Jose

      Me gusta

  14. Hola Jose.

    Primero que todo muchas gracias por tu aporte a la comunidad y por tu evidente disposición a ayudar.

    Soy realmente nuevo en este tema (un par de horas travesenado JMeter) y en este momento necesito probar una aplicación web desarrollada sobre Flex…JMeter está en capacidad de ejecutar este tipo de pruebas? Alguna luz para mi oscuro camino?

    Desde ya muchas gracias,

    Me gusta

    1. Hola Sergio,

      Gracias por comentar en el blog.

      En cuanto a la compatibilidad entre JMeter y la tecnología Flex la verdad es que no esta del todo contemplada por JMeter y es medio inestable por lo que te podes encontrar con algunos problemas (más que nada con los archivos binarios AMF entre otras cosas….) Dicho eso, lo que te recomiendo es grabar con el Proxy algún escenario de tu aplicación, parametrizar el script y ejecutarlo para poder verificar si no tenes ningún problema ya que hay más posibilidades de que ande a que no.

      Si tienes problemas con los archivos AMF, puedes mirar esta guia: http://note19.com/2008/05/06/how-to-use-jmeter-to-load-test-flex-applications/

      Otra cosa, asegurate de tener la ultima versión ya que es un tema que se ha tocado últimamente y si tenes una versión vieja más que seguro que no te ande.

      Un abrazo,

      José

      Me gusta

  15. Buenas, si el protocolo de mi url es HTTPS, el procedimiento a seguir para grabar las pruebas es el mismo?? es que me da errores cuando es https y sin embargo cuando es http si realiza bien las pruebas, gracias un saludo

    Me gusta

      1. Muchas gracias, he realizado las grabaciones en Badboy y lo he exportado, ahora me viene una duda, como seria la ejecución en jmeter, deberia seguir el mismo procedimiento? es decir, crear grupo de hilos.. y demás configuración?

        Perdona las molestias, gracias un saludo.

        Me gusta

  16. Hola

    Lo que pasa es que buscando en internet encontré esta herramienta, y quiero saber si es posible que me pueda ayudar para hacer lo que quiero, bueno tengo una aplicación web que mediante formularios le envía información a una aplicación en desktop instalada en un servidor y esta regresa un resultado. Ahora es seguro que esta aplicación sea usada por muchos usuarios, entonces necesito saber si mi programa en desktop soportara la carga de todos los usuarios uno tras otro realizando peticiones.

    Para poder medir esto necesito que al grabar un test plan toda la información de los formularios sea real y sobre todo diferente cada vez que se ejecute la prueba, además que pueda ver reflejada en mi base de datos la información que se envió durante las pruebas, es decir que los datos generados por el test, en realidad se estén guardando.

    Perdón si no soy muy claro con le quiero, pero de cualquier manera muchas gracias y espero me puedas orientar.

    Saludos

    Me gusta

    1. Hola Ricky,

      Se entiende tu problema. Con Jmeter lo puedes hacer, lo que necesitas es grabar la petición que envías al servidor o crear manualmente una petición HTTP con la acción POST para que envie los valores del formulario. En cuanto a la parte de que los datos sean reales pero distintos tienes dos opciones, agregas un CSV Data Set o ingresas valores duros y lo completas con una variable random para que todos los valores sean distintos.

      Para la última parte de tu consulta, en cuanto a la BD, si el request es correcto los datos se deberían guardar como si el formulario fuera enviado por el browser

      Saludos,

      José

      Me gusta

      1. Muchas gracias, que chido que existan sitios como este, en los que encuentres este tipo información sobre QA y testing, espero que esta parte tan importante del desarrollo de Software siga creciendo cada dia mas y sobre todo que personas como tu sigan apoyando a quienes apenas estan comenzando en esto.

        Muchas Gracias y voy a probar lo que me sugeriste

        saludos

        Me gusta

    1. Hola Luz,

      Creo que hay un poco de confusión en tu pregunta, JMeter esta desarrollado en Java pero eso no implica que solo trabaje con Java, en cambio, no importa con que lenguaje este desarrollada la aplicación sino como se comunican servidor cliente. Los tipos de comunicaciones entre servidor cliente que soporta JMeter son:

      * Web – HTTP, HTTPS
      * SOAP
      * Database via JDBC
      * LDAP
      * JMS
      * Mail – POP3(S) and IMAP(S)

      Si tu aplicación utiliza cualquiera de estos tipos de conexiones (sin importar que este desarrollada en Pascal, Cobol, Clipper, .net, Java, Python,…) podras utilizar JMeter para las pruebas.

      Saludos,

      José

      Me gusta

  17. Hola, muy buen articulo para armar un plan de pruebas a una aplicacion web. en este momento estoy construyendo un plan de pruebas para un web service, me podrias dar alguna recomendacion para la ejecucion de estas pruebas? o tal vez si cuentas con una guia al respecto o conoces alguna para aplicarla a mi plan?.
    Adicionalmente una de las cosas mas complejas de estos test creo que es agregarle elementos que le den comportamientos de ambiente real, como retardos, concurrencia entre usuarios, podrias darnos algunos tips al respecto para aplicarlos en el tipo de prueba que estoy adelantando?

    muchas gracias.

    pd: algunas imgenes no las puedo ver, verificalas.

    Me gusta

  18. Hola,

    Soy nueva en la aplicación y quisiera saber si existe algún manual o ayuda que me indique como usar bien el JMeter ya que no entiendo mucho.

    Gracias.

    Me gusta

    1. Hola Angie,

      Primero te doy la bienvenida al mundo del Performance Testing!

      En cuanto a tu consulta, podrás encontrar mucha información sobre Performance Testing y JMeter en este blog. Si la información no es suficiente puedes recurrir a los siguientes links:
      http://jakarta.apache.org/jmeter/usermanual/get-started.html
      http://www.sqaforums.com/postlist.php?Cat=0&Board=UBB54
      http://www.mail-archive.com/jmeter-user@jakarta.apache.org

      Si tal vez buscas algún tipo de capacitación más formal y completa te recomiendo que visites esta sección:
      https://josepablosarco.wordpress.com/capacitaciones-en-performance-y-automated-testing/

      Espero que te sea de ayuda la información.

      Saludos,

      José Pablo Sarco

      Me gusta

  19. Hola:

    Estoy iniciandome en el jmeter para realizar pruebas de una aplicación en web. He ojeado esta pagina y me parece muy interesante. Además en Español!!!

    En cuanto a mi duda actual es la siguiente. Estoy grabando con el servidor Proxy http la navegación por una página que tiene un formulario. No consigo que me grabe los datos de ese formulario para poder después utilizar parámetros, etc…

    Para eso estoy utilizando el badboy pero me gustaría saber si podría realizar toda la grabación con el jmeter

    ¿Eso es que no se puede o es que estoy haciendo algo mal? La grabación de la navegación se hace bien pero no veo los datos de ese formulario

    Gracias por la atencion

    Me gusta

    1. Hola Enrique,

      Me alegra que te guste el blog, la idea es de que ayude a que más gente se interese en las pruebas de Performance y Automatización.

      En cuanto a tu pregunta, aclaro algunas cosas en cuanto a la grabación:
      * JMeter no soporta la grabación HTTPS, por eso se recomienda utilizar BadBoy para realizar la misma y luego exportarla a JMeter.
      * JMeter soporta la grabación HTTP, en esos casos lo mejor es utilizar el elemento Proxy HTTP y asegurarse de poner los filtros necesarios para evitar elementos no necesarios en nuestra prueba.

      En tu caso, deberías revisar bien cada elemento HTTP Request en busca de los parámetros necesarios y no solo mirar la sección «Enviar Parámetros con la petición» sino también la sección «Path» ya que muchas veces se graban ahí.

      Espero que la respuesta sea de ayuda, en caso de que así no sea, puedes enviarme más información para encontrar la solución.

      Saludos,

      José

      Me gusta

  20. Hola:

    Otra pregunta. En jmeter consigo definir pruebas con el servidor proxy http de forma que me vuelque todos los elementos de la página (con recuperar todos los elementos empotrados de archivos html).

    No consigo hacer lo mismo con la herramienta badboy. Sabes como se puede hacer??

    Gracias otra vez

    Me gusta

    1. Enrique,

      Es extraño que badboy no te capture todos los elementos del HTML, pero BadBoy solo deberías utilizarlo como complemento de JMeter cuando deseas grabar un escenario HTTPS. ¿Porque no usas el Proxy de JMeter?

      Muchas Gracias,

      José

      Me gusta

  21. Hola, gracias por tu gran aporte, en serio me agrado y me ayudo aunque por desgracia no lo porque no me da los resultados deseados considerando que seguí al pie de palabra tu ejemplo, en fin ojala puedas ayudarme con otro ejemplo… ya que para ser sincero la verdad es que no entiendo bien que hace el programa en si(Jmeter) pero bueno, preguntando se llega a Roma

    Me gusta

    1. Otto,

      Lo que JMeter hace es simular carga de usuarios sobre aplicaciones para poder realizar pruebas de performance, stress, ….Es solo una herramienta para obtener estadísticas, las cuales deben ser analizadas posteriormente y llevar a cabo las acciones necesarias dependiendo del contexto. Si quieres me puedes enviar por mail los resultados que obtuviste en lugar de los deseados y vemos si te puedo ayudar.

      Saludos,

      José

      Me gusta

      1. José,

        Gracias por decirme para que servía Jmeter. Ya que no tenia muy clara la idea de que era, y no te preocupes por lo otro que lo volví a intentar leyendo de nuevo y si salio, nada mal considerando que estoy usando Ubuntu y el firefox.

        Me gusta

      2. José,

        Gracias por decirme para que servía Jmeter. Ya que no tenia muy clara la idea de que era, y no te preocupes por lo otro que lo volví a intentar leyendo de nuevo y si salio, nada mal considerando que estoy usando Ubuntu y el firefox.

        Saludos..
        P.S. que otro temas tienes interesantes tendras posteriormente?

        Me gusta

      3. Otto,
        Me alegro que hayas llegado al resultado que buscabas con JMeter.

        Por el momento estoy con bastante trabajo pero estoy escribiendo de a poco varios post que tengo iniciados, sobre algunos puntos básicos al momento de analizar los resultados de JMeter, plugins para JMeter y profundizar un poco más sobre el Testing Automatizado…pero esto estará saliendo en las próximas semanas, no puedo ser muy preciso en cuanto eso.

        Saludos,

        José

        Me gusta

  22. Hola, tenemos un formulario con varios campos: varias cajas de texto, varias listas (sencillas y múltiples) y un par de checkboxes. Quisiéramos implementar un script que genere múltiples requests con distintas permutaciones de valores para estos campos. Ya hemos estructurado soluciones para campos individuales, pero quisiéramos combinar distintas opciones de una manera más inteligente, ojalá manejando un modelo probabilístico real para el uso de cada campo.

    Un problema en particular es enviar 0, 1 ó más valores a un combobox multivalor. Sabemos cómo enviar 1 o una cantidad x fija. Pero quisiéramos enviar de manera aleatoria 0, 1 o n valores. ¿Hay manera de hacerlo?

    Agradeceria pronta respuesta…

    Gracias.. muy bueno el post..

    Me gusta

  23. Hola Jose,

    Me gustaría realizar pruebas de carga sobre Oracle Forms, y no sé muy bien si con Jmeter se podria realizar dichas pruebas. Me podrías decir si has lanzado pruebas de carga contra Oracle Forms, o si conoces alguna herramienta opensource que me permita esto. Muchas Gracias.

    Saludos.

    Me gusta

    1. Juan Pablo,

      Para poder simular el envío de los formularios puedes «Grabar» con JMeter los request que tu aplicación realiza o directamente puedes incluir un HTTP Request y completar tu mismo los campos que se envían y sus valores. En cuanto al numero de usuarios, independientemente de la opción que elijas, debes completar los datos para el GrupodeHilos indicando los 500 usuarios y como se comportan los mismos.

      Espero que sea de ayuda.

      Saludos,

      José

      Me gusta

  24. Estimado, es posible que tengas por ahi un ejemplo o me indiques como se pueden usar los Beanshell y la diferencia de uno del otro, soy nuevo en esta herramienta y me ha tocado por trabajo hacer un test de strees, y con lo primero que me pillado es que el sistema que debo probar al ingresar User y Password, esta ultima ejecuta una instruccion en JS la cual convierte el valor a MD5, he leido que con beanshell y con JAVA puedo ejecutar una funcion similar para que me pase dicho valor a MD5 ( la funcion en java ya la tengo creada), el tema es que no he logrado entender cual es la diferencia entre estos distintos Beanshell y si es lo mismo que BSF, etc.

    Sólo si es posible su ayuda se lo agradeceria mucho, mi mail es rorellana@ngames.cl

    de ante mano muchas gracias por leerme y por su tiempo

    Rodrigo

    Me gusta

  25. Hola…
    Una consulta estoy tratando de estresar mi aplicación con Jneter, ya que al ingresar mas de 500 usuarios no permite el acceso de los siguientes… y quisiera replicar la situación , pero aún no puedo lograrlo con Jmeter

    Ojala me puedan ayudar. GRACIASSS

    Me gusta

    1. Paula,

      En simples palabras,necesitarías saber cuales son los escenarios más frecuentes que realizan los usuarios, luego grabar los mismos con JMeter (Quizás sea necesario algo más) y ejecutarlos contra un ambiente controlado donde puedas recolectar las estadísticas necesarias para saber donde se encuentran los problemas.

      Si necesitas más ayuda, no dudes en consultar.

      Muchas Gracias por comentar.

      José

      Me gusta

      1. Me sorprende tu rapida respuesta y te lo agradezco.
        Efectivamente hago llamados a dos de las páginas más usadas por los usuarios.

        Una consultas:
        1.- Por cada página debo hacer HTTP REQUEST HTTP CLIENT ??? O SI una pagina llama a otra, ésta la llama por si sola?

        2.- Que significa Codificar e Incluir Equals, en Enviar Parámetros con la Petición del HTTP REQUEST HTTP CLIENT?

        Desde ya te agradezco tu tiempo y dedicación.

        Paula

        Otra

        Me gusta

      2. Paula,

        Contesto tus preguntas:

        1- En caso de ser una aplicación web lo más común es utilizar el muestreador HTTP Request que utiliza la implementación HTTP Java por default.
        Desconozco tu contexto de pruebas, pero el muestreador HTTP REQUEST HTTP CLIENT utiliza el componente HttpClient de Apache y permite realizar IP Spoofing agregando un campo más al muestrador HTTP Request.

        En cuanto a redireccionamiento («Si una pagina llama a otra»), se puede realizar en forma automática con cualquiera de las 2 opciones de JMeter: debes activar la opción «Redirect Automatically» para que automáticamente se redireccione o puedes marcar la opción «Follow Redirects» para que solo redireccione en aquellos casos en los que sea necesario.

        2-
        Codificar?: Esta opción debe ser marcada para aquellos casos en que tu aplicación codifique la URL, es decir, si tu aplicación pone «+» en lugar de espacios (la mayoría de los casos) para enviar los valores del parámetro al servidor, debes activarla.
        Un ejemplo:
        si tengo los parametros:
        Nombre: item
        Valor: este es un item
        codificar?: si
        Incluir Equals?: si

        El envió de JMeter será:

        https://josepablosarco.wordpress.com/?item=este+es+un+item

        Jmeter cambia los espacios por el símbolo +; si la opción «Codificar?» esta desactivada el envió sería «item=este es un item» tal cual esta parametrizado.

        Incluir Equals?: Esta opción debe ser marcada para aquellos casos en que cuando los parámetros son enviados con valores vacíos, el servidor igualmente este esperando que el parámetro lleve el símbolo igual luego del nombre del mismo. (Por eso mismo solo la podemos desactivar cuando el campo valor esta vació)
        Siguiendo el ejemplo anterior, si el campo Valor estuviera vació (y la demás configuración igual)
        El envió de JMeter será:

        https://josepablosarco.wordpress.com/?item=

        Jmeter incluye igual el símbolo «=» por más que el parámetro no tenga valor, si la opción se desactiva, JMeter envía «.com/?item» .

        Espero que la respuesta sea de ayuda.

        Quedan a disposición mis servicios en Pruebas de Performance y Automatización.

        Muchas Gracias,

        José

        Me gusta

      3. josepablosarco :
        Paula,
        Contesto tus preguntas:
        1- En caso de ser una aplicación web lo más común es utilizar el muestreador HTTP Request que utiliza la implementación HTTP Java por default.
        Desconozco tu contexto de pruebas, pero el muestreador HTTP REQUEST HTTP CLIENT utiliza el componente HttpClient de Apache y permite realizar IP Spoofing agregando un campo más al muestrador HTTP Request.
        En cuanto a redireccionamiento (“Si una pagina llama a otra”), se puede realizar en forma automática con cualquiera de las 2 opciones de JMeter: debes activar la opción “Redirect Automatically” para que automáticamente se redireccione o puedes marcar la opción “Follow Redirects” para que solo redireccione en aquellos casos en los que sea necesario.
        2-
        Codificar?: Esta opción debe ser marcada para aquellos casos en que tu aplicación codifique la URL, es decir, si tu aplicación pone “+” en lugar de espacios (la mayoría de los casos) para enviar los valores del parámetro al servidor, debes activarla.
        Un ejemplo:
        si tengo los parametros:
        Nombre: item
        Valor: este es un item
        codificar?: si
        Incluir Equals?: si

        El envió de JMeter será:

        https://josepablosarco.wordpress.com/?item=este+es+un+item
        Jmeter cambia los espacios por el símbolo +; si la opción “Codificar?” esta desactivada el envió sería “item=este es un item” tal cual esta parametrizado.
        Incluir Equals?: Esta opción debe ser marcada para aquellos casos en que cuando los parámetros son enviados con valores vacíos, el servidor igualmente este esperando que el parámetro lleve el símbolo igual luego del nombre del mismo. (Por eso mismo solo la podemos desactivar cuando el campo valor esta vació)
        Siguiendo el ejemplo anterior, si el campo Valor estuviera vació (y la demás configuración igual)
        El envió de JMeter será:
        https://josepablosarco.wordpress.com/?item=
        Jmeter incluye igual el símbolo “=” por más que el parámetro no tenga valor, si la opción se desactiva, JMeter envía “.com/?item” .
        Espero que la respuesta sea de ayuda.
        Quedan a disposición mis servicios en Pruebas de Performance y Automatización.
        Muchas Gracias,
        José

        José Pablo, ayer te envié un correo por Testing, pero no sé si te llegó.

        Realicé la prueba colocando el «REDIRECT AUTOMATIC» y me entrega errores. Sin embargo con Follows Redirect me ejecuta todas las jsp, a excepción de un servlet que no se ejecuta, será necesario generar otra petición HTTP para este Servlet?

        Gracias por tu atención, nuevamente.

        Paula

        Me gusta

      4. Paula,

        No me llego tu mail, en cuanto al servlet deberías analizar con tu equipo de desarrollo que tan necesario es que el mismo se cargue o no y tomar una decisión en conjunto.

        Saludos!

        José

        Me gusta

  26. Hola José, he utilizado el badboy para exportar scripts de html a jmeter, pero ahora necesito hacer lo mismo pero para applets, conoces alguna herramienta para lograr eso?

    Me gusta

    1. Miguel,

      JMeter no esta diseñado para realizar pruebas de performance sobre applets ya que tienes la necesidad de emular de la actividad del lado del cliente y no sólo la actividad del lado del servidor (por lo que podría decir que JMeter está diseñado para generar actividad del lado del servidor). La emulación de la actividad del lado del cliente puede exigir PCs dedicas para cada usuario emulado para así reflejar la realidad de la implementación en producción.
      Para estos casos lo recomendable es realizar pruebas de performance con herramientas que simulen a un usuario real que este utilizando el applet como Selenium, QTP u otras….

      En el caso de que quieras verificar la interacción del applet con tu servidor, tendrías que disponer de un sniffer como Wireshark para analizar los datos que se envían y replicar esos request en JMeter en forma manual.

      Espero que sea de ayuda la respuesta.

      Saludos!

      José

      Me gusta

  27. Muy buenas tardes,

    Es posible grabar al grabar escenarios adjuntar archivos? la prueba que quiero hacer es diligenciar un formulario, al finalizar el formulario es necesario adjuntar un archivo y ese archivo es enviado a un correo electronico, entonces al ejecutar la prueba si lo quiero simular de 100 usuarios concurrentes me van a llegar 100 correos?

    Adicionalmente a eso es necesario al diligenciar el formulario ingresar un numero que debe ser único, como hago para que al ejecutar el escenario el jmeter me cree estos 100 números

    Me gusta

    1. Oveymar,

      Es posible simular la subida de archivos con JMeter, para eso debes utilizar la opción «Enviar Archivos con el Request»en la Petición HTTP con el método de envío «POST» (Si grabas tu escenario, JMeter solo te creará esta configuración). En tu caso, los 100 usuarios estarían efectuando esta petición HTTP por lo que se estaría subiendo el adjunto para los 100 usuarios virtuales.

      En cuanto al nro único, puedes utilizar el nro de Hilo o agregar un contador a tu plan de pruebas y utilizar el mismo para que le asigne un nuevo valor a cada request.

      Para más información:
      * Sobre peticiones HTTP: http://jakarta.apache.org/jmeter/usermanual/component_reference.html#HTTP_Request
      * Sobre Contadores: http://jakarta.apache.org/jmeter/usermanual/component_reference.html#Counter

      Espero que la respuesta sea de ayuda.

      Saludos!

      José

      Me gusta

  28. Hola,
    he creado un escenario de prueba con una aplicación y en algunos jpg y js estoy obteniendo error/warning 404 (color naranja), mientras que en otros jpg y js funciona correctamente. Alguien puede aportarme algo de luz? Gracias.

    Me gusta

    1. David,

      Es muy extraño el escenario que describes, sin tener mucha información, te recomendaria alguna de estas alternativas:
      * revisar la configuración de los request que estan fallando
      * revisar que esos archivos sigan existiendo
      * volver a grabar el escenario de pruebas.

      Espero sea de ayuda.

      Saludos!

      José

      Me gusta

  29. hola:

    quisiera preguntar como puedo configurar un test de pruebas en jmeter para N usuarios , el problema es que necesito probar varias paginas de mi aplicacion pero la incial es un login y mi deseo es solo loguearse una sola vez y poder probar la carga de las demas independiente del login

    muchas gracias

    Me gusta

    1. Pablo,

      Para esto podrás tendrás que ubicar el cookie manager (si es que la sesion se maneja por cookies) a en la misma jerarquia que los grupos de hilos que contienen las distintas actividades o poner un control de only once donde se realice el logueo del usuario.

      Saludos!

      José

      Me gusta

  30. BUENAS ALGUIEN ME PUEDE AYUDAR POR FAVOR URGENTE TENGO UNA BASE DE DATOS EN MYSQL Y TENGO QUE HACERLE PRUEBAS A LA BASE PERO NO SE NI COMO CONECTARLA…POR FAVOR AYUDA URGENTE….

    Me gusta

    1. Andres,

      Es muy complicado poder ayudarte teniendo en cuenta el contexto que relatas, te recomiendo que te pongas en contacto con tu equipo de desarrollo y juntos a ellos vayas realizando la actividad. Puede sonar trivial, pero también puedes intentar con google.

      Suerte y saludos!

      José

      Me gusta

  31. hola josé, estoy realizando unas pruebas a un servidor de mapas y al simular 100 usuarios ejecutando la misma peticion al servidor (una imagen) la media que obtengo es un valor bastante elebado, ¿que representa dicho valor? el tiempo para un único usuario o para los cien simulados. Yo lo que quiero es saber el tiempo de respuesta del servidor cuando 100 usuarios hacen esa petición. Muchas gracias adelantadas.

    Me gusta

  32. Hola

    Estoy haciendo unas pruebas de volumen con Jmeter, el detalle es que nececesito que por medio del Jmeter se cargue un archivo para ver como se afecta en tiempo mi página, pero cuando pasa a la petición de CargarArchivo me marca fin de sesion aunque en el arbol de resultados el estatus esta en verde.

    Me puden ayudar por favor

    Me gusta

  33. Buenos Dias

    quiero saber si tienes jmeter para instalarlo en un servirdor que esta sobre solaris, te agradeceria pues me seria de mucha ayuda esta herramienta.

    Me gusta

  34. Saludos Pablo

    Estoy trabajando con JMeter para realizar las pruebas a un sistema creado por el equipo de desarrollo de donde trabajo. El caso es que la red donde estamos tiene establecido un proxy y la aplicacion aun esta en un servidor interno de la institucion. Cuando grabo los escenarios de prueba, al momento de correrlos para ver que tal el resultado de estos, me salen todas las solicitudes con error, el error que me sale es el siguiente –> Non HTTP response code: java.net.ConnectException

    Me gustaria saber como resuelvo esto para saber como esta funcionando la aplicacion o que si el proxy tiene algo que ver con esto. Te recuerdo que el servidor es interno. Esto puede causar problemas?

    Gracias.

    Me gusta

  35. Hola que tal buenas noches. Primero quiero agradecer el foro porque como en algun comentario pusieron, lo fabuloso es que esta en español :D. Tengo un problema, estoy estresando una aplicacion web, contiene el llenado de un formulario, todo corre de manera correcta pero al momento de lanzar por ejemplo 50 hilos, en la base de datos solo veo 5 o 10 registros, en cada ejecucion que hago el numero cambia pero lo maximo que e logrado son 14, ya agregue Expresiones Regulares pero el problema persiste. ¿Me podrian apoyar por favor?. De antemano mil gracias
    Saludos =)

    Me gusta

    1. Nena,

      Te recomiendo que realizas un monitoreo de la base de datos y compruebes que no este ocurriendo ningun deadlock o algun otro problema de concurrencia con la misma. Como una opcion, puedes ver de ejecutar las pruebas agregando timers al momento final de escritura en base de datos para asegurar de que no ocurran en manera simultanea y verificar que no sea un probelema de la base de datos.

      Saludos,

      José

      Me gusta

  36. Saludos:

    Tras grabar un escenario en JMETER en el cual tan sólo me logo en una aplicación web y escribo un comentario en ella (tipo foro). El comportamiento que espero al reproducir el escenario es que me aparezcan nuevos comentarios iguales, cada vez que ejecuto el escenario. Sin embargo no es así. En el «Árbol de resultados» me aparecen las Requests en estado verde. Por lo que creo que no existe problema al reproducir el escenario.

    ¿Sabe alguien el motivo?

    Muchas gracias

    Me gusta

  37. Hola, estaba leyendo este blog que esta muy bueno … lo que pasa es que tengo q realizar unas pruebas de stress en mi base de datos … estoy realizando una aplicacion en .Net y la base de datos en la cual estamos trabajando es Sql Server 2008 y necesitamos realizar las respectivas pruebas, estuve investigando algunos programas para poder realizar esto y me encontre con jmeter .. el problema que no tengo idea si este programa me ayudara con lo que necesito y como configurarlo …. como otro dato kero montar la aplicacion en un servidor 2008 ..

    Esperando tu pronta respuesta ya que en vdd necesito realizar las pruebas lo mas ante posible …

    Bueno Saludos y nuevamente te felicito por el blog

    Me gusta

  38. Buenos días
    Es posible grabar un escenario para una aplicación que se creo únicamente para dispositivos móviles?
    Si es posible: Jmeter debe tener una configuración especial, o funciona igual como si estuviera creando el escenario de prueba para un explorador web?
    Saludos y Gracias

    Me gusta

  39. Buenos dias Jose, tengo un pequeño problema. Segui todos los pasos como esta ejemplificado mas arriba pero sin embargo no me graba ninguno de los pasos del escenario que estoy tratando de llevar adelante. Quisiera saber si puede ser por algun tema del proxy, o que podria ser? Desde ya muchas gracias!

    Me gusta

Deja un comentario

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.