jueves, 14 de abril de 2011

Como probar un script BeanShell en un fichero desde consola

En JMETER tenemos la posibilidad de ejecutar scripts BeanShell localizados en ficheros externos.

Por ejemplo, en la asignación de una variable de usuario en un módulo de pre-procesamiento, puedo querer asignarle el resultado de un script BeanShell localizado en un fichero "fichero.bsh".

Para probarlos desde la consola de comandos podemos ejecutar el siguiente comando:
java -cp rutaBaseDeLaInstalacionDeJmeter/lib/bsh-2.0b5.jar bsh.Interpreter ficheroScriptBeanShell.bsh

Creo que si se tiene instalado el intérprete bsh, también podemos ejecutar directamente:
bsh ficheroScriptBeanShell.bsh

Referencia desde Jmeter


¡Importante!: La ruta relativa del fichero con el script, debe ser relativa al directorio del script que ha invocado jmeter. Si he ejecutado directamente dirJmeter/bin/jmeter.bsh o dirJmeter/bin/jmeter.bat, entonces la ruta deberá ser relativa a dirJmeter/bin/. Y si he invocado el script rutaMiScript/miScript.sh que a su vez internamente ha llamado al dirJmeter/bin/jmeter.sh, entonces la ruta del fichero con el script BeanShell que ponga dentro de Jmeter tendrá que ser relativa a rutaMiScript/.

En caso de que queramos asignarle a la variable el resultado de ejecutar todo el fichero con el script BeanShell tendríamos, dentro de JMeter, la asignación siguiente:
MI_VARIABLE --> ${__BeanShell(source("rutaFichero/ficheroScriptBeanShell.bsh");)}

También podemos, en vez de ejecutar todo el fichero, invocar un método concreto. Para ello, primero incluimos el script con la misma invocación que en el caso anterior y luego a continuación invocamos el método-

¡Importante! La llamada al método del script de BeanShell debe tener escapadas las comas.
MI_VARIABLE --> ${__BeanShell(source("../wsPlans/ficheroScriptBeanShell.bsh");miMetodo("parametroTextoA"\,"parametroTextoB"\,3\,"parametroTextoC");)}

1 comentario :

Ay payo, coméntame algo, porfa...