jueves, 19 de mayo de 2016

JMeter III..y pico.Depurando Scripts avanzado.

En este artículo vamos a completar algunas técnicas que se usan habitualmente en las pruebas con esta herramienta, porque tal y como dicen , “la creación de código es un proceso retroalimentado, dado que siempre se pueden encontrar errores”.

Depurando un script de JMeter. Debug Sampler.


Muchas veces nos encontramos con la necesidad de saber cómo varian los valores de las variables, ya sean parametrizadas o correlacionadas. Para conocer el valor de las mismas , se dispone de un elemento de postprocesado sumamente útil : El debug Post-processor.

Este elemento sigue las normas de ámbito del resto de elementos de un plan de trabajo o script de JMeter, es decir, recoge información acerca de las peticiones que se encuentren por encima del mismo en la estructura de árbol del script.

Debug PostProcessor. Habilitación de visualización de variables

Como se puede ver, el elemento post-procesador de Debug, permite seleccionar
  • Valores del entorno

JMeter properties
Sampler properties
System properties

  • Valores relacionados con la prueba (¡lo que nos interesa! )
                     JMeter Properties

   
                     
En nuestro caso, lo más habitual será usar el desplegable de JMeter variables y seleccionar el valor a “True”.

Esta habilitación permite mostrar las variables creadas durante la ejecución , pudiendo ver qué valores van tomando y comparar con los resultados esperados.

La visualización de los valores monitorizados de este elemento debe hacerse usando el receptor de tipo "Visualizar Árbol de Resultados", en la que veremos una correspondencia variable=valor detrás de cada petición 

Usando Debug Post Processor


Salvado las variables. BeanShell scripting.


A lo largo de estos artículos, hemos tratado en varias ocasiones con la posibilidad de uso avanzado de código, mediante los muestradores (pre y post) beanshell. Esos elementos permiten la inclusión de código Java/JScript que maneje los datos del flujo de respuesta y envío recibidos  o generados por la ejecución de JMeter.

Aunque no es el objeto de estos artículos mostrar cómo usar programación en lenguaje Java, si que vamos a incluir un pequeño ejemplo de elemento BeanShell para salvar variables de JMeter a un fichero.

Como principal nota, indicar que el funcionamiento de este elemento al ser un muestreador post o pre petición requiere que vaya asociado a un muestreador HTTP.



/*Aquí introducimos el código, que pretende salvar una serie de variables definidas en nuestro script a un fichero para poderlas consultar a posteriori tras una prueba o usarlas como fichero de entrada para otra prueba*/

/*El FileWriter es el escritor de fichero y en él se indica la ruta del fichero destino*/
FileWriter fstream = new FileWriter("c:\\pruebas\\SalvarVariables.dat",true);

/*out es el manejador del fichero ,que lleva aparejados los métodos para escribir en el mismo*/

BufferedWriter out = new BufferedWriter(fstream);

/*con vars.get(“NOMBRE”) obtenemos de las variables de JMeter la que corresponda con esa etiqueta */
/*out.write(..), es la función con la que escribimos en el fichero*/

out.write(vars.get("NUMSOLICITUD")+";");
out.write(vars.get("DNI")+";");
out.write(vars.get("NOMBRE")+";");
out.write(vars.get("APELLIDO1")+";");
out.write(vars.get("APELLIDO2")+";");
out.write(vars.get("SEXO")+";");
out.write(vars.get("FECHANAC")+";");
out.write(vars.get("ESTADOCIVIL")+";");
out.write(vars.get("EMAIL")+";");


out.write(System.getProperty("line.separator"));// Separador de líneas (salto de línea)
out.close(); /*Aquí cerramos la escritura y el fichero*/
fstream.close();


Beanshell postProcessor. Añadiendo código útil

No hay comentarios:

Publicar un comentario