Есть ли какая-либо функция, доступная в Load Runner, чтобы получить настройки времени выполнения в переменной (ях) - PullRequest
0 голосов
/ 21 апреля 2019

Я пытаюсь создать цикл в моем скрипте загрузчика, который будет работать до тех пор, пока время стимуляции не станет равным нулю.Ниже приведен жестко запрограммированный скрипт.

Здесь мне нужно жестко запрограммировать время стимуляции, которое было определено в настройках времени выполнения.Есть ли у нас какая-либо функция для получения заданного времени стимуляции в настройках времени выполнения переменной.

 int pacingtime = 600;
 starttime = time();
 <Web Requests>
 endtime = time();
 diff = endtime - starttime;
 waittime = pacingtime - diff;
label1:
s1 = time();
<Web Custom Requests>
s2 = time();
s3 = s2 - s1
count = waittime - s3;
waittime = waittime - s3;
 if (count < 0)
     goto label1;
 else
     goto label2;

label2:
return 0;

Спасибо!

1 Ответ

0 голосов
/ 22 апреля 2019

Рассмотрите этот код и его значение для вашего вопроса.В настройках времени выполнения установите количество итераций равным 100 без стимуляции.В ваших дополнительных атрибутах добавьте значение для «стимуляции» со значением 2. Выполните и просмотрите журналы.

long pacing;

vuser_init()
{
    pacing=lr_get_attrib_long("pacing");

    lr_message("pacing: %d",pacing);

    if (pacing==0){ 
        lr_message("Illegal value"); 
    }

    return 0;
}

Action()
{   double how_long;
    merc_timer_handle_t timer=lr_start_timer();

    sleep(rand()%(pacing*1000)+1000);

    how_long=lr_end_timer(timer);

    if ( how_long >= pacing )
    {
        lr_message("delayed %lf seconds, longer than %d seconds\r\nEnding Iterations",
        how_long,
        pacing);

        return -1;
    }
    else
    {
        lr_message("delayed %lf seconds, less than %d seconds\r\nSleeping %lf seconds",
        how_long,
        pacing,
        ((double)pacing-how_long));     
    }

    return 0;
}

vuser_end()
{
    return 0;
}
...