LR中参数与变量相互转化

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

LoadRuner中的参数与变量

在LoadRunner脚本开发中,经常会遇到参数与变量相互转换的情况,本文对常见的转换情形进行了方法总结。

1、变量的赋值

//将字符串赋值给变量

char strTemp[30];

strcpy(strTemp, "Hello World!!");

//错误的字符串赋值方式

strTemp = "Hello World!!";

/* 注:

* 在LR中若直接将字符串赋值给变量,编译时将会报错

* 报错信息:operands of = have illegal types `char' and `pointer to char' */

//将数值赋值给变量

int x = 10;

/* 注:

* 在LR中,变量的声明一定要放在脚本的最前面,且声明的语句中不要有其他的脚本代码

* 若将以上申明放置在脚本中部,将会产生如下形式的报错信息

* illegal statement termination

* skipping 'int'

* undeclared identifier 'x'

*/

2、参数的赋值

//将字符串赋值给参数

lr_save_string("Hello World!!","paraStr");

//将变量中的值赋值给参数

char strTemp[30];

strcpy(strTemp, "Hello World") ;

lr_save_string(strTemp, "paraStr");

//将数值直接赋值给参数

lr_save_int(123, "paraNum");

//将变量中的数值赋值给参数

int num = 10;

lr_save_int(num*2, "paraNum");

3、参数的取值

//从参数中进行取值,不管参数是字符串还是数值

lr_eval_string("{paraStr}");

lr_eval_string("{paraNum}");

//取出的值均为字符串类型,因此输出时格式需为"%s"

lr_output_message("%s", lr_eval_string("{paraNum}"));

4、参数=>变量

//将参数转换为字符串变量,参数paraStr中的值为"Hello World!!"

char strTemp[30];

strcpy(strTemp, lr_eval_string("{paraStr}"));

lr_output_message("%s", strTemp);

//将参数转换为数值变量,参数paraNum中的值为"246"

int num;

num = atoi(lr_eval_string("{paraNum}")); //将字符串转换为数值

lr_output_message("%d", num);

//将参数格式化输出到变量

SeatPrefListCount = atoi( lr_eval_string("{SeatPrefList_count}") ); sprintf(varRandomSeatPref, "{SeatPrefList_%d}",

1+rand()%SeatPrefListCount);

//将格式化的随机日期写入变量varRandomDepartDate

sprintf(varRandomDepartDate, "%d/%d/%d", 1+rand()%12, 1+rand()%28, 2009+rand()%6);

5、参数=>参数

//参数的复制:将参数paraStr_1的值复制到参数paraStr_2

lr_save_string(lr_eval_string("{paraStr_1}"),"paraStr_2");

6、变量=> 参数

//定义变量为常量变量,最好为字符数组

Char zmg[50];

Char zmg2=”Tsetname0001”;

//常量变量可直接使用save函数

lr_save_string(zmg,"par01");

//从函数返回的char*值需要先用strcpy转换存储

strcpy(zmg,my_input_par_format("测试红烧肉"));

lr_save_string(zmg2,"par02");

6、字符<=> 数值

//字符、int类型互转

int m2;

char *ss;

web_reg_find("Text=\"code\":\"0\"","SaveCount=assnum",LAST);

//字符转int类型

m2=atoi(lr_eval_string("{assnum}"));

if(m2>0){

lr_output_message("检查点通过");

}

// int类型转字符

itoa(m2,ss,10);//第3个参数为进制,一般为10,此函数与平台有关,不建议使用

// int类型转字符,常用于替代itoa

int page=0;

char page_ch[60];

page=page + 10;

sprintf(page_ch,"%d",page); //格式化数据,根据第2个参数转换并格式化数据存储到第1个参数中

相关文档
最新文档