Jmeter удаление повторяющихся строк из файла csv

В jmeter с использованием http-запросов я отправляю несколько пакетов json и из ответов я использую пост-процессор jsr223 для извлечения данных и сохранения их в файлах csv, каждая запись в каждой строке. Теперь для 10 почтовых запросов я получаю дублирующиеся данные в файле csv. Есть ли способ прочитать файлы csv и удалить повторяющиеся строки с помощью jmeter. Количество строк в файлах csv может быть почти 200 000.

например: файл csv должен быть похож на csvFile1.csv: line1 line2 duplicateline ........... и так далее


person venkat sai    schedule 06.11.2018    source источник


Ответы (1)


  1. Вы можете прочитать файл в ArrayList как

    new File('/path/to/file').readLines()
    
  2. Вы можете удалить повторяющиеся записи с помощью unique () функционирует как

    def lines = file.readLines().unique()
    
  3. Вы можете записать уникальные строки обратно, используя Writer

Собираем все вместе:

def file = new File('/path/to/file')
def lines = file.readLines().unique()
file.withWriter { writer ->
    lines.each {line ->
        writer.writeLine(line)
    }
}

Демо:

введите здесь описание изображения

На всякий случай: Шпаргалка по шаблонам Groovy для JMeter < / а>

person Dmitri T    schedule 06.11.2018
comment
содержит ли ArrayList 200 000 элементов - person venkat sai; 07.11.2018
comment
Почему нет? Он может содержать до 2 147 483 647 элементов, если у вас достаточно Java Heap space < / а>. Вот пример добавления 10 миллионов элементов в список. - person Dmitri T; 07.11.2018
comment
У меня было это сомнение, но вы его полностью прояснили. Спасибо, сэр - person venkat sai; 07.11.2018