Я готовлю данные для отправки как часть HTTP-запроса,
поэтому подготовка данных выполняется в препроцессоре BeanShell.
При изменении размера запроса мне нужно передать переменную длину JSON.
Я создаю тело JSON для цикла for, но параметры не меняются, например:
try{
int[] po = {20, 30, 40, 50, 75};
int rNum = getRandom(0,4);
String name="${name}";
String _class="${_class}";
StringBuilder msgBody = new StringBuilder();
msgBody.append("{\"name\":\"")
.append(name)
.append("\", \"class\":\"")
.append(_class)
.append("\", \"marks\":[");
for (int i=0;i<po\"[rNum];i++)
{
msgBody.append("{ \"subject\":\"${__P(marks${line_offset})}\"," },");
}
int length=msgBody.length()-1;
log.info(String.valueOf(length));
msgBody.setLength(length);
msgBody.append("] }");
vars.put("json",msgBody.toString());
}
${__P(marks${line_offset})}
остается неизменным внутри цикла.
Как включить изменение внутри цикла?