在做loadrunner性能脚本开发时,常常碰见一个需求:符合web_reg_save_param函数中定义的左右边界值的值有多个,而我们的常规写法默认返回的是符合条件的第一个,而有时我们却需要使用后面的值,下面来进行介绍,如何获取多个,并且如何使用这些获取到的值。

  首先介绍一般我们经常使用的写法:

    web_reg_save_param("paramName",

                "LB=左边界",

                "RB=右边界",

                LAST);

  这种写法保存到paramName中的值为返回符合条件的第一个值。

  那么如果我们要获取到所有符合条件的值,就应该在条件中加入ORD=ALL这样的一个请求参数。写法如下:

    web_reg_save_param("paramName",

                "LB=左边界",

                "RB=右边界",

                "ORD=ALL",//来指定获取所有符合条件的值。

                "Savelen=50",//这个参数用来限制获取字符的长度。这个部分可以不加。
//如果加了,那么就不进行捕捉检查了,所以会导致长度写少了就会进行截取,有可能导致数据丢失。                 LAST);

  如果我们有4个符合条件的值,那么程序运行后,在log中打印出来的结果是:

        Notify: Saving Parameter "paramName_1 = aaa"

        Notify: Saving Parameter "paramName_2 = bbb"

        Notify: Saving Parameter "paramName_3 = ccc"

        Notify: Saving Parameter "paramName_4 = ddd"

        Notify: Saving Parameter "paramName_count = 4"

  那么我们如果拿到这些值并且使用它们呢,其实很简单,具体实现如下:

    由于我们已经知道了参数的名称,那么可以先简单打印一下验证是否正确:

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

接下来,我们可以进行循环取出所有:

            int mark=1;//数组角标标记。
char markVar[10];//拼接数组变量key值
char markValue[10];//存储数据变量key //关联函数
    web_reg_save_param("paramName",                 "LB=左边界",                 "RB=右边界",                 "ORD=ALL",//来指定获取所有符合条件的值。                 LAST); //这里是你的请求函数
web_submit_data //循环取出所有值
for(;mark<=atoi(lr_eval_string("{paramName_count}"));mark++){ sprintf(markVar, "{paramName_%d}",mark);
//将mark变量拼接到markVar中, sprintf(markValue, "Value=%s", lr_eval_string(markVar));
//取出markVar中的值,存储到markValue中,计算后markValue的值就是被关联后要取出来的值
          //值已经取到,你想要做啥,在这里就可以随便做啦!!这里打印一下!
lr_message("%s", markValue); }

值已经在markValue中了,怎么玩就随你啦!!!

loadrunner必用函数web_reg_save_param获取多个符合边界值条件的使用方法的更多相关文章

  1. Python字符串必记函数

    Python字符串函数数不胜数,想要记完所有几乎不可能,下列几个是极为重要的一些函数,属于必记函数. 一.join 功能: 将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 语 ...

  2. LoadRunner中常用函数参考手册

    基础篇1:LoadRunner中常用函数参考手册 常用函数列表 web_url web_submmit_form VS web_submmit_data VS web_custom_request w ...

  3. 怎样用jQuery自带方法/函数来获取outerHTML属性

    原文地址:http://jingyan.baidu.com/article/7f41ececf93b48593d095c25.html 包括我自己在内(其实我也就这两天才知道这样可以快速获取的),很多 ...

  4. WMI 获取硬件信息的封装函数与获取联想台式机的出厂编号方法

    原文:WMI 获取硬件信息的封装函数与获取联想台式机的出厂编号方法 今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都是可以提取出来的,就自己把那些公共部分提出出来,以后如果要获取 某部分的 ...

  5. Thinkphp3.2.3框架下封装公共的函数,例如封装CURL函数来获取接口数据

    当我们需要在控制层调用相同的封装函数时,写多次相同的函数,显得代码十分的拉杂,不精简: TP框架有一个很好的机制,可以再Common定义一个function.php函数,当我们在控制层调用的时候直接调 ...

  6. saltstack在jianja模板中,执行salt函数来获取某些变量的值,并且将配置写入到配置文件中?

    问题描述: 通过saltstack的jinja模板方式,可以将变量的值写入到配置文件,即动态获取的方式.这里介绍,通过执行salt函数来获取值的方式. 演示: 1.通过在sls中,增加jinja的模板 ...

  7. python之enumerate函数:获取列表中每个元素的索引和值

    源码举例: def enumerate_fn(): ''' enumerate函数:获取每个元素的索引和值 :return:打印每个元素的索引和值 ''' list = ['] for index, ...

  8. IT小鲜肉 Widgets Tree 单选、多选、相关回调函数、获取选中的节点功能

    写一个树控件并没有想象中的那么容易,今天又花了我一个1个多小时,主要为IT小鲜肉 Widgets Tree控件添加了 单选.多选.选择前和选择后两个回调函数.获取选中节点的功能.后面会继续努力完善这个 ...

  9. LoadRunner调用java函数测试oracle

    LoadRunner调用java函数测试oracle 测试oracle的方法有很多,可以使用loadrunner的oracle协议直接调用oracle进行测试,也可以调用开发的java程序对oracl ...

随机推荐

  1. hdu4362 dp + 单调队列优化

    dp传输方程很easy需要 dp[i][j] = min{dp[i - 1][k] + abs(pos[i][j] -pos[i - 1][j]) + cost[i][j]} n行m一排 每个传输扫描 ...

  2. centos6.5 64位 openvpn安装配置(转)

    查看系统版本cat /etc/redhat-releaseCentOS release 6.5 (Final) 查看内核和cpu架构uname -rm2.6.32-431.el6.x86_64 x86 ...

  3. Android应用公布的准备——生成渠道包

    我们须要使用一个变量标明该app的渠道.通常我们能够在manifest中的application节点下声明.例如以下. <meta-data android:name="CHANNEL ...

  4. 前框 (一个)zTree 从数据库树形菜单动态加载

    这些天做动态菜单使用此插件.现在有一个非常广泛的开源框架,最新QUI框架是菜单部分使用这个插件开发,因此,它是非常值获取深入的研究和探讨,通过使用非常丰富的感觉功能,己开发和编写,官网上有非常详尽的A ...

  5. 将node-expat扩展编译至node.exe中

    1.下载node源代码 https://github.com/joyent/node (v:0.10.25) 2.下载node-expat源代码 https://github.com/node-xmp ...

  6. java并行体系结构

    并行编程 线程通信 共享内存和消息传递 线程同步 控制不同线程的运行顺序 java并发 基于共享内存模型 指令重排序 编译器重排序 处理器重排序 cpu重排序 写缓存区(cache.寄存器) 内存屏障 ...

  7. Cordic 算法之 反正切

    在通信的算法中,常采用Cordic算法之一,知道角度产生正交的的正弦余弦, 或者知道正弦和余弦求角度,求反正切. 1. 求正弦和余弦值. 方法:旋转角度,得到正弦余弦值: 再旋转角度,到达下一个正弦余 ...

  8. 详细说明C++笔试题,调查超载、盖、多态

    C++可见版本,他说,这本书是采访的主题,调查超载.盖.多态性等概念,比较有代表性的.今天上午,远程辅导 Yan Wang 学生们学习 Qt 时还觉得这个话题,假设你能正确地理解这一主题,注意对于 C ...

  9. ListView单选的实现总结(转)

    今天在智能停车场项目中需要实现PullToRefreshListView的单选功能,考虑到分页,刷新等,以前的实现方式是采用自己维护一个集合保存选中位置的选中状态,但这个方式比较繁琐,今天采用了lis ...

  10. shell变一些小技巧

    如果我们定义了一个变量为: file=/dir1/dir2/dir3/my.file.txt 能够用${ }分别替换得到不同的值: ${file#*/}:删掉第一个 / 及其左边的字符串:dir1/d ...