我想使用列表中的随机数来选择参数数组的特定元素,并在脚本的其他地方将其用作参数,例如。
数组是sspaidlist 参数列表中的随机整数是{GenRandomSSPAID},我想将其用作sspaidlist数组的元素并保存为RandomSSPAID
lr_save_string(lr_eval_string("sspaidlist_{GenRandomSSPAID}"),"RandomSSPAID");
这只是给了我实际价值" sspaidlist"而不是数组。
我也试过
sprintf(RandomSSPAID, "{sspaidlist_%d}", lr_eval_string("{GenRandomSSPAID}"));
但似乎将RandomSSPAID设置为0
这个想法是获得3个唯一值 - 所以3个不同的数组元素,我不能两次获得相同的值。我已将随机性卸载到loadrunner参数函数,因此我将始终使用{GenRandomSSPAID}获取唯一编号。
答案 0 :(得分:1)
首先将“GenRandomSSPAID”转换为整数,如下所示:
i = atoi(lr_eval_string(“{GenRandomSSPAID}”));
现在使用sprintf将其保存到RandomSSPAID中,如下所示:
sprintf(RandomSSPAID,“{sspaidlist_%d}”,i);
你现在应该能够看到价值。
答案 1 :(得分:0)
我使用以下代码解决了这个问题:
//declare c variables
Add_List()
{
....
char *RandomSSPAID;
char *SecondRandomSSPAID;
char *ThirdRandomSSPAID;
RandomSSPAID = lr_paramarr_idx("sspaidlist",atoi(lr_eval_string("{GenRandomSSPAID}")));
lr_save_string(lr_eval_string(RandomSSPAID),"RandomSSPAID");
SecondRandomSSPAID = lr_paramarr_idx("sspaidlist",atoi(lr_eval_string("{GenRandomSSPAID}")));
lr_save_string(lr_eval_string(SecondRandomSSPAID),"SecondRandomSSPAID");
ThirdRandomSSPAID = lr_paramarr_idx("sspaidlist",atoi(lr_eval_string("{GenRandomSSPAID}")));
lr_save_string(lr_eval_string(ThirdRandomSSPAID),"ThirdRandomSSPAID");
lr_error_message("Random Values for iteration %s are : %s_%s_%s",lr_eval_string("{IterationNumber}"),lr_eval_string("{RandomSSPAID}"),lr_eval_string("{SecondRandomSSPAID}"),lr_eval_string("{ThirdRandomSSPAID}"));
....
}
请注意,我将随机性卸载到Loadrunner
以生成{GenRandomSSPAID}
的随机数,subject = new Subject<any>();
constructor (){
this.subject.next('hello');
}
getsubject():Observable<any>{
return this.subject.asObservable();
}
是参数类型的文件,带有数字列表和设置以选择新行“随机”,更新“每次出现”的值