LoadRunner中的参数与变量-产生20位的随机数

在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");

实际操作:产生20位的随机数

pkv是8位,pkv1是8位,pkv2是4位

把所有的值,组合起来传给pkvALL,pkvALL是20位

最新文章

  1. 【知识必备】一文让你搞懂design设计的CoordinatorLayout和AppbarLayout联动,让Design设计更简单~
  2. 使用canvas绘制一个时钟
  3. SQL Server 全文索引创建
  4. 树形DP习题
  5. 表单form的属性,单行文本框、密码框、单选多选按钮
  6. 用javascript获取屏幕高度和宽度等信息
  7. mysql优化整理(索引)
  8. jquery正则表达式显示文本框输入范围 只能输入数字、小数、汉字、英文字母的方法
  9. word-wrap 和 word-break
  10. 【关于微软的上一代模板引擎 T4引擎】
  11. vs 中 vim vax 快捷键
  12. Combox下拉绑定DataGridView
  13. 关于JS中利用for循环解决实际问题的逻辑操作
  14. 记录解决python在spark运行加载第三方库的问题
  15. flex布局基本语法
  16. tensorflow 导入gfile模型文件
  17. 【RPC】使用Hessian构建RPC的简单示例
  18. Delphi XE5中的新增内容
  19. [转]学习笔记_springmvc注解形式的开发参数接收
  20. C语言 · 瓷砖铺放

热门文章

  1. Mike and gcd problem CodeForces - 798C
  2. (025)[系统故障]XP下禁止将串口设备识别成鼠标(转)
  3. Win10新机的安装与配置
  4. AJPFX关于java中的方法
  5. List的深度copy和浅度拷贝
  6. [ SNOI 2013 ] Quare
  7. Selenium私房菜系列1 -- Selenium简介
  8. phpstorm 格式化代码
  9. 如何在一次请求中通过JS中获取Url中的参数
  10. flash player vista or win7