Генерация случайных значений в сэмплере JSR223 в JMeter - PullRequest
0 голосов
/ 04 ноября 2018

def index = [];
def randoms = [];
def size = new File("C:/Users/320027671/Desktop/JmeterPerformanceSuit/CompleteSuit/STU3/Post/index.csv").readLines().size();
File file = new File("C:/Users/320027671/Desktop/JmeterPerformanceSuit/CompleteSuit/STU3/Post/index.csv");
file.each { line ->
	index << line
	randoms << __Random(0,size,)
}

Скрипт выдает ошибку

метод не существует

scirpt работает до индекса << строка, проблема со случайной функцией </p>

Ответы [ 2 ]

0 голосов
/ 05 ноября 2018

Ваш подход может не дать «случайных» чисел, особенно для файлов меньшего размера, вы можете получить дубликаты значений в списке randoms, поэтому я бы порекомендовал сделать что-то вроде:

1.upto(size, { i ->
    randoms.add(i)
})

Collections.shuffle(randoms)

Это заполнит список randoms числами от 1 до длины size, а затем вызовет функцию Collection.shuffle () для «рандомизации» списка.

На всякий случай проверьте Написание функций JMeter в Groovy для получения дополнительной информации.

0 голосов
/ 04 ноября 2018

Я предполагаю, что вы используете groovy в качестве языка (иначе он не будет работать)

Вы не можете использовать функции JMeter внутри JSR223

Вы можете рандомизировать каждую строку, используя, например, RandomUtils :

org.apache.commons.lang3.RandomUtils.nextInt(0, size-1); 
...