Я использую бесплатную версию soapui. В моем нагрузочном тесте я хочу прочитать значение поля запроса из текстового файла. Файл выглядит следующим образом:SoapUI Load test groovy последовательное чтение txt-файла
0401108937
0401109140
0401109505
0401110330
0401111204
0401111468
0401111589
0401111729
0401111768
В испытании на нагрузку для каждого запроса я хочу прочитать этот файл последовательно. Я использую код, упомянутый в Unique property per SoapUI request using groovy, чтобы прочитать файл. Как я могу последовательно использовать значения из файла?
У меня есть следующий сценарий установки тест, чтобы прочитать файл
def projectDir = context.expand('${projectDir}') + File.separator
def dataFile = "usernames.txt"
try
{
File file = new File(projectDir + dataFile)
context.data = file.readLines()
context.dataCount = context.data.size
log.info " data count" + context.dataCount
context.index = 0; //index to read data array in sequence
}
catch (Exception e)
{
testRunner.fail("Failed to load " + dataFile + " from project directory.")
return
}
В моем тесте, я следующий сценарий в качестве этапа проверки. Я хочу, чтобы прочитать текущую запись индекса из массива, а затем увеличивает значение индекса
def randUserAccount = context.data.get(context.index);
context.setProperty("randUserAccount", randUserAccount)
context.index = ((int)context.index) + 1;
Но с этим сценарием, я всегда получаю 2-ю запись массива. Значение индекса не увеличивается.
Я хочу прочитать значения, затем выполняется тест один за другим. – amique
О, я думаю, вы можете выбрать шаг источника данных, чтобы прочитать все значения и поместить затем в переменную и шаг цикла (для этих шагов вам нужен Soapui Pro) – Lerminou