commands - diferentes valores para jmeter ${__ UUID} en bucle
jmeter while controller (3)
- Reemplace
${__UUID}
conUUID.randomUUID().toString()
. No coloque en línea las variables y funciones de JMeter, no es una práctica muy buena y puede generar un comportamiento inesperado (como en su caso). Particular para su escenario, es mejor llamar directamente a los métodos de clase UUID . - No utilice elementos de prueba BSF, no son muy eficientes desde el punto de vista del rendimiento. Considere usar los elementos de prueba JSR223 y el lenguaje Groovy. Ver Beanshell vs JSR223 vs Java JMeter Scripting: el rendimiento que has estado esperando. para una explicación, puntos de referencia, detalles de instalación de motor maravilloso y mejores prácticas de scripting.
En mi preprocesador BSF (lenguaje javascript), estoy generando datos de publicaciones como
var totalCustomer = 2;
var data = { "customers": [] };
for(i=1; i<=totalCustomer; i++){
// in all iteration getting same value for ${__UUID}
var customer = {
"id": "${__UUID}"
}
data.customers.push(customer);
}
vars.putObject("data",JSON.stringify(data));
Supongo que se compila una vez y se busca el valor en iteraciones posteriores.
¿Hay alguna forma en que pueda generar diferentes guid
usando ${__UUID}
para cada iteración?
Puede usar el campo "Parámetros" para pasar $ {__ UUID}.
Luego, en tu código, usa:
bsh.args [0]
Ejemplo:
Esto es cuando está usando el preprocesador en un controlador While o en un controlador de bucle.
Pero si habla de un código de Beanshell que contiene un bucle, simplemente haga lo siguiente:
UUID.randomUUID (). ToString ()
Por supuesto, asegúrese de importar la clase:
importar java.util estadounidenseID;
Escribir el preprocesador JSR223 usando lenguaje java para generar UUID
vars.put("myUUID",UUID.randomUUID().toString());
luego acceda a ella en su preprocesador JSR223 de JavaScript.
var customer = {
"id": "${myUUID}"
}