Отправка параметра в имени файла с кавычками в loadrunner - PullRequest
0 голосов
/ 27 февраля 2020

Как передать параметр в имени файла с кавычками в loadrunner?

Я попытался принудительно параметризировать, щелкнув правой кнопкой мыши слово в имени файла и присвоив его идентификатору VUser. Но это не сработало, так как я получил предупреждение: в функции обнаружен неверный параметр.

В приведенном ниже примере stoid - это переменная, которую я извлекаю из экрана, а savetofileint - это C функция I записал для создания файла с именем, упомянутым в кавычках.

savingToFileInt(stoid,"C:\\Users\\Desktop\\{NewParam_1}.txt");

Другая функция должна позже извлечь значение из файла. Вот почему мне нужно отправить идентификатор VUser или номер итерации в имени файла, чтобы идентифицировать его. Как правильно это сделать?

Ответы [ 2 ]

1 голос
/ 27 февраля 2020

Вам необходимо добавить lr_eval_string к подстановке параметра.

// savingToFileInt(stoid,"C:\\Users\\Desktop\\{NewParam_1}.txt");

lr_save_string("123456","NewParam_1");
lr_message("[%s]", lr_eval_string("C:\\Users\\Desktop\\{NewParam_1}.txt"));

// savingToFileInt(stoid,lr_eval_string("C:\\Users\\Desktop\\{NewParam_1}.txt"));
0 голосов
/ 01 марта 2020

Вот почему мне нужно отправить идентификатор VUser или номер итерации в имени файла, чтобы идентифицировать его.

Рассматривали ли вы преимущество функции lr_output_message (), которая будет отправлять ваше сообщение контроллеру во время теста? Или вы считаете, что стандартная модель журнала будет записывать отдельные сообщения.

Что-то, о чем следует помнить, привлекая локальную файловую систему в свой тест производительности, вы вводите узкое место в локальный генератор нагрузки. Теперь у вас будет десятки, сотни, возможно, тысячи отдельных потоков, борющихся за доступ к головке записи для вашего диска.

Я бы порекомендовал другую модель для попытки сделать то, что вы делаете, - сохранить значение в файл для последующего использования. Тщательно продумайте использование Virtual Table Server, независимого решения организации очередей, такого как RabbitMQ, или даже любой из служб очередей у ​​облачных провайдеров в качестве механизма арбитража для передачи данных между виртуальными пользователями. Использование локальной файловой системы для такого типа передачи будет проблематичным c под нагрузкой. Гораздо лучше использовать сервис, независимый от локальных генераторов нагрузки, для передачи данных внутри виртуального пользователя. Эта рекомендация применима ко всем инструментам тестирования производительности, коммерческим и открытым исходным кодом.

...