LoadRunner中多值关联的3种处理方式
需求:通过关联取得的ParamName参数可能存在多个值,需要对每个ParamName参数值进行处理
脚本:可通过3种不同的实现方式,将每个参数值作为HTTP请求内容发出
web_reg_save_param("ParamName",
"LB/IC=\"id\":\"OutputParameter.",
"RB/IC=\",\"",
"Ord=All",
"Search=Body",
"RelFrameId=1",
LAST);
...
Paramcount=atoi(lr_eval_string("{ParamName_count}")); //参数个数
i=1;
while
(i<=Paramcount) {
sprintf(str,"{ParamName_%d}",i); //生成ParamName_i
//方法一:将变量转为参数,直接在请求中使用参数
lr_save_string(lr_eval_string(str),"Value"); //对每个参数进行处理
web_submit_data("FreeQueryServlet_24",
"Action=http://datasvr01:8081/freequery/FreeQueryServlet",
"Method=POST",
"RecContentType=text/html",
"Referer=http://datasvr01:8081/freequery/js/freequery/businessview/Preview.html",
"Snapshot=t27.inf",
"Mode=HTTP",
ITEMDATA,
"Name=className", "Value=ClientReportService", ENDITEM,
"Name=methodName", "Value=addNewParam", ENDITEM,
"Name=params", "Value=[\"{ClientID}\",\"OutputParameter.{Value}\",\"\"]", ENDITEM,
LAST);
//方法二:通过strcpy、strcat方式组织字符串,通过变量发送请求
strcpy(s,"Value=[\"{ClientID}\",\"OutputParameter.");
strcat(s,str);
strcat(s,"\",\"\"]");
web_submit_data("FreeQueryServlet_24",
"Action=http://datasvr01:8081/freequery/FreeQueryServlet",
"Method=POST",
"RecContentType=text/html",
"Referer=http://datasvr01:8081/freequery/js/freequery/businessview/Preview.html",
"Snapshot=t27.inf",
"Mode=HTTP",
ITEMDATA,
"Name=className", "Value=ClientReportService", ENDITEM,
"Name=methodName", "Value=addNewParam", ENDITEM,
"Name=params", s, ENDITEM,
LAST);
//方法三:通过sprintf格式化输出生成需要的字符串,通过变量发送请求
sprintf(s,"Value=[\"{ClientID}\",\"OutputParameter.%s\",\"\"]",str);
web_submit_data("FreeQueryServlet_24",
"Action=http://datasvr01:8081/freequery/FreeQueryServlet",
"Method=POST",
"RecContentType=text/html",
"Referer=http://datasvr01:8081/freequery/js/freequery/businessview/Preview.html",
"Snapshot=t27.inf",
"Mode=HTTP",
ITEMDATA,
"Name=className", "Value=ClientReportService", ENDITEM,
"Name=methodName", "Value=addNewParam", ENDITEM,
"Name=params", s, ENDITEM,
LAST);
i++;
}


LoadRunner中多值关联的3种处理方式的更多相关文章
- Android平台中实现对XML的三种解析方式
本文介绍在Android平台中实现对XML的三种解析方式. XML在各种开发中都广泛应用,Android也不例外.作为承载数据的一个重要角色,如何读写XML成为Android开发中一项重要的技能. 在 ...
- Ajax中的get和post两种请求方式的异同
Ajax中我们经常用到get和post请求.那么什么时候用get请求,什么时候用post方式请求呢? 在做回答前我们首先要了解get和post的区别. 1. get是把参数数据队列加到提交表单的A ...
- Hibernate中双向多对多的两种配置方式
Hibernate中双向多对多的两种配置方式 1.建立多对多双向关联关系 package cn.happy.entitys; import java.util.HashSet; import java ...
- 转:Ajax中的get和post两种请求方式的异同
1. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML ...
- C++中的类继承(1) 三种继承方式
继承是使代码可以复用的重要手段,也是面向对象程序设计的核心思想之一.简单的说,继承是指一个对象直接使用另一对象的属性和方法.继承呈现了 面向对象程序设 计的层次结构, 体现了 由简单到复杂的认知过程. ...
- MyBatis中主键回填的两种实现方式
主键回填其实是一个非常常见的需求,特别是在数据添加的过程中,我们经常需要添加完数据之后,需要获取刚刚添加的数据 id,无论是 Jdbc 还是各种各样的数据库框架都对此提供了相关的支持,本文我就来和和大 ...
- 在web项目中获取ApplicationContext上下文的3种主要方式及适用情况
最近在做web项目,需要写一些工具方法,涉及到通过Java代码来获取spring中配置的bean,并对该bean进行操作的情形.而最关键的一步就是获取ApplicationContext,过程中纠结和 ...
- 六十四、SAP中的内表的9种定义方式
一.内表一共有9种定义方式,如下: 二.执行如下 *&--------------------------------------------------------------------- ...
- C#中迭代器的概念和两种实现方式
1.首先我们看下IEnumerable接口定义: namespace System.Collections { // Summary: // Expose ...
随机推荐
- HTML5中的Range对象的研究
一:Range对象的概念 Range对象代表页面上的一段连续区域,通过Range对象,可以获取或修改页面上的任何区域,可以通过如下创建一个空的Range对象,如下: var range = docu ...
- IOS: 使用imageIO获取和修改图片的exif信息
使用imageIO获取和修改图片的exif信息 一幅图片除了包含我们能看见的像素信息,背后还包含了拍摄时间,光圈大小,曝光等信息.UIImage类将这些细节信息都隐藏了起来,只提供我们关心的图片尺寸, ...
- CSS初学
CSS作用是美化html网页.内联:body 标签里.内嵌:head标签里,可以多次重复使用.p{}:引用时,class引用.#p{}:引用时,id引用超链接的stylea:link 超链接被点前的状 ...
- [Effective JavaScript 笔记]第25条:使用bind方法提取具有确定接收者的方法
js里方法和属性值为函数,就像一个东西两种称呼一个样,比如土豆,也叫马铃薯,一个样.既然一样,那就可以对对象的方法提取出来为函数,然后把提取出来的函数作为回调函数直接传递给高阶函数. 高阶函数是什么 ...
- TCP协议漏洞影响大量Linux设备
导读 本周三在得州奥斯丁举行的 USENIX 安全研讨会上,加州大学河滨分校研究生 Yue Cao 将报告一个严重的TCP协议边信道漏洞(PDF),该漏洞允许攻击者远程劫持任意两主机之间的会话.该漏洞 ...
- [Unity3D]图形渲染优化、渲染管线优化、图形性能优化
原地址:http://blog.sina.com.cn/s/blog_5b6cb9500101dmh0.html 转载请留下本文原始链接,谢谢.本文会不定期更新维护,最近更新于2013.11.09 ...
- jsp&servlet学习笔记
1.路径引用问题 一个css.jsp.html.或者javascript文件从从一个工程复制到另一工程,如果引用的时候使用的时相对路径,看似没有错误,但是却一直引用不进来,这时候要使用绝对路径,这样才 ...
- easyui 删除行bug
easyui删除行,出现了bug.(经常使用这个框架的人几乎都会遇到) 我也非常纳闷,今天特地试了很久. 最后发现,如果是自己datagrid('getRows') 然后迭代出来,最后算出行号,可以成 ...
- rubycas-client单点登录
(文章是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com) 进行中,未完待续 Ruby 客户端 使用方法0. 在 Gemfile中,加入: gem 'rubyc ...
- Stanford机器学习---第九讲. 聚类
原文:http://blog.csdn.net/abcjennifer/article/details/7914952 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...