{"id":1867,"date":"2024-02-22T08:16:00","date_gmt":"2024-02-22T07:16:00","guid":{"rendered":"https:\/\/ittester.sk\/sin-categorizar\/scripting-beanshell-en-jmeter\/"},"modified":"2024-07-11T09:43:16","modified_gmt":"2024-07-11T07:43:16","slug":"scripting-beanshell-en-jmeter","status":"publish","type":"post","link":"https:\/\/ittester.sk\/es\/pruebas-de-rendimiento\/tutorial-de-jmeter\/scripting-beanshell-en-jmeter\/","title":{"rendered":"Scripting BeanShell en JMeter"},"content":{"rendered":"\n<p>BeanShell es un lenguaje de programaci\u00f3n ligero. Tiene una sintaxis similar a Java y se interpreta como un lenguaje de scripting en lugar de como un lenguaje compilado.<\/p>\n\n<h2 class=\"wp-block-heading\">Scripting BeanShell en el ejemplo JMeter<\/h2>\n\n<p>En este ejemplo, abrimos el buscador Bing, tecleamos un t\u00e9rmino de b\u00fasqueda y obtenemos los 5 primeros enlaces de los resultados de la b\u00fasqueda.<\/p>\n\n<p><strong>Paso.1.<\/strong>  Espero que est\u00e9s familiarizado con las secuencias de comandos comunes de JMeter, as\u00ed que no entraremos en profundidad y supondremos que la secuencia de comandos para abrir el bingo y escribir el t\u00e9rmino de b\u00fasqueda ya est\u00e1 secuenciada. Como se muestra en la imagen siguiente, tenemos un controlador de transacciones \u00abEjecutar bing\u00bb y \u00abObtener todos los enlaces a los resultados\u00bb. Estos controladores transaccionales tendr\u00e1n sus respectivas peticiones HTTP.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"220\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-1-1000-220.webp\" alt=\"\" class=\"wp-image-1038\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-1-1000-220.webp 1000w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-1-1000-220-300x66.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-1-1000-220-768x169.webp 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n<\/div>\n<p><strong>Paso.2.<\/strong>  Primero ejecutamos el script y obtenemos el texto de respuesta en el \u00e1rbol de visualizaci\u00f3n de resultados y creamos una expresi\u00f3n regular para obtener la referencia, para m\u00e1s informaci\u00f3n sobre la extracci\u00f3n de expresiones regulares consulta nuestro post sobre Correlaci\u00f3n en JMeter.<\/p>\n\n<p><strong>Paso.3.<\/strong>  El siguiente paso ser\u00e1 crear un Extractor Regexp, que se a\u00f1adir\u00e1 como hijo de la petici\u00f3n HTTP dentro del controlador \u00abObtener todos los enlaces a los resultados\u00bb.<\/p>\n\n<p><strong>Paso.4.<\/strong>  A\u00f1ade el elemento BeanShell Script como hijo y escribe el siguiente c\u00f3digo:<\/p>\n\n<p><strong>palabra clave = \u00abcitas de buda\u00bb;<\/strong><\/p>\n\n<p><strong>enlaces = vars.get(\u00abenlaces\u00bb);<\/strong><\/p>\n\n<p><strong>f = nuevo FileOutputStream(\u00abresultado.csv\u00bb,true);<\/strong><\/p>\n\n<p><strong>p = nuevo PrintStream(f);  <\/strong><\/p>\n\n<p><strong>este.int\u00e9rprete.setOut(p);<\/strong><\/p>\n\n<p><strong>print(palabra clave + \u00ab,\u00bb + enlaces);<\/strong><\/p>\n\n<p><strong>f.cerrar();<\/strong><\/p>\n\n<p class=\"has-text-align-center\"><strong>Mira la imagen de abajo para comparar:<\/strong><\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"830\" height=\"520\" src=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-4-830-520.webp\" alt=\"\" class=\"wp-image-1040\" srcset=\"https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-4-830-520.webp 830w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-4-830-520-300x188.webp 300w, https:\/\/ittester.sk\/wp-content\/uploads\/2024\/02\/skriptovanie-beanshell-v-jmeter-krok-4-830-520-768x481.webp 768w\" sizes=\"auto, (max-width: 830px) 100vw, 830px\" \/><\/figure>\n<\/div>\n<p>El c\u00f3digo es f\u00e1cil de entender y produce un archivo result.csv con referencias a la palabra clave \u00abcitas buda\u00bb. Tambi\u00e9n podemos parametrizar la palabra clave y hacer que el gui\u00f3n sea m\u00e1s gen\u00e9rico y din\u00e1mico.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>BeanShell es un lenguaje de programaci\u00f3n ligero. Tiene una sintaxis similar a Java y se interpreta como un lenguaje de scripting en lugar de como un lenguaje compilado.<\/p>\n","protected":false},"author":8,"featured_media":1870,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[38],"tags":[],"class_list":["post-1867","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial-de-jmeter"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/posts\/1867","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/comments?post=1867"}],"version-history":[{"count":1,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/posts\/1867\/revisions"}],"predecessor-version":[{"id":1873,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/posts\/1867\/revisions\/1873"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/media\/1870"}],"wp:attachment":[{"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/media?parent=1867"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/categories?post=1867"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ittester.sk\/es\/wp-json\/wp\/v2\/tags?post=1867"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}