Передайте переменную для работы в Loadrunner

У меня есть ParameterArray называется TBname

web_reg_save_param_ex("ParamName=TBname",
        "LB=sysinfo.asp?s=",
        "RB=\" title=\"Systeminformationen",
        "Ordinal=all",
        LAST);

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

"слишком много аргументов для 'lr_eval_string'"

так как функция ожидает только один аргумент, и он думает, что i это тоже аргумент. Как я могу избежать того, что loadrunner думает, что i это аргумент?

create_report()
{
    int i= 0;


if ((file_stream = fopen(filename, access_mode)) == NULL)  { 
    lr_error_message ("Cannot open or create %s", filename);   
    return -1;
}

for(i=0;i<10;i++){

    TBnameposition = lr_eval_string("{TBname_%d}",i+1);

    fprintf(file_stream,"%s \n",TBnameposition);        
}

fclose(file_stream);

    return 0;
}

1 ответ

Решение

В твоем случае, lr_eval_string() принимает const char *,

Вы должны использовать sprintf() генерировать строку, а затем вызвать lr_eval_string() с этой строкой.

Разработать

  1. определить char массив (достаточной длины), как char arr[256] = {0};
  2. использование sprintf() поместить значение в массив, как sprintf(arr, "{TBname_%d}", i+1);
  3. вызов lr_eval_string(arr),
Другие вопросы по тегам