Как динамически добавить темп в сценарий HP LoadRunner

Я работаю над проектом тестирования производительности, используя HP load runner, мое требование состоит в том, чтобы динамически добавлять темп через скрипт для каждой итерации. Я потерял исследование, но не смог найти одно решение для этого. Может ли кто-нибудь помочь в этом?


person user3669660    schedule 23.05.2014    source источник


Ответы (4)


В загрузчике LR_thinktime() есть функция LR, она принимает секунду в качестве входного параметра. Пример: LR_thinktime(5) заставит ваш скрипт думать 5 секунд. Вы можете использовать эту функцию, чтобы вызвать требуемую стимуляцию в вашем скрипте vugen. Имейте некоторую логику для расчета темпа в секундах и передачи его в LR_thinktime(). Надеюсь, это поможет вам!!

person Thomas    schedule 23.05.2014
comment
Объедините это с переменной (случайного типа, с диапазоном, если необходимо), и вы получите желаемую «переменную стимуляцию». Что-то вроде LR_thinktime( LR_evalstring("{variable_name}") ); — точный синтаксис может измениться, так как прошло некоторое время с тех пор, как я написал свой последний скрипт LR. - person blurfus; 23.05.2014
comment
lr_thinktime() не приведет к модели постоянного темпа, поскольку значение будет зависеть от настроек времени выполнения для перекоса, наложенного на ваше время обдумывания +/- ваше вычисленное число в вашей функции времени обдумывания. сон(‹миллисекунды›); не зависит от настроек времени выполнения, связанных с временем обдумывания. - person James Pulley; 27.05.2014

Если вам нужен реальный темп сценария и достаточно точное количество секунд, вы можете использовать что-то вроде этого:

int i, iPacing;

iPacing = 5; // Number of seconds to wait between passes of the script

lr_save_datetime("%H%M%S",DATE_NOW,"dCurTime");

i = atoi(lr_eval_string("{dCurTime}")) - atoi(lr_eval_string("{dStartTime}"));       

if (i >= iPacing){
   Action1();
   Action2();
   Action3();   
   lr_save_datetime("%H%M%S",DATE_NOW,"dStartTime");
} 

Эта самая последняя строка также входит в vuser.init для установки начального времени запуска.

person Ray Dodier    schedule 10.10.2016
comment
Кстати, это будет нормально работать для теста в тот же день, но вам нужно будет изменить настройку времени, чтобы включить дополнительную информацию, если тест проходит за пределы дня/месяца/года. - person Ray Dodier; 11.10.2016

Используйте следующий код в начале или в конце вашего блока действий:

lr_thinktime(atoi(lr_eval_string("{paramname}")));

paramname — это имя параметра, который будет представлять собой случайное число. вы можете легко создать параметр с помощью настроек файла параметров.

person Sahil Chaudhary    schedule 26.05.2014

Если вам нужен прямой контроль темпа, на который не будут влиять ваши настройки времени обдумывания, вы можете использовать сон (миллисекунды); за задержку. Вы также должны иметь возможность получить номер итерации, используя параметр.

Я использовал этот тип модели для модели затухающей стимуляции с функцией sleep() в конце итерации с фиксированным значением, деленным на номер итерации.

person James Pulley    schedule 26.05.2014