LoadRunner关联函数的脚本实例--如何操作关联参数
LoadRunner关联函数的脚本实例--如何操作关联参数
这几天一直在学习LoadRunner的VuGen编程,今天想对关联函数web_reg_save_param做详细的试验和研究:
~f6p q+Z RM0
a6_%_+vF9Ws\w&S0
问题提出:如何对关联的数据进行字符串操作。下面使用了LoadRunner自带的订票例子为例,进行了这方面的试验。假设我要关联的数据是由几个字符串组成的。如何使这些字符串组成一个参数,供我后面的函数使用?51Testing软件测试网.VZR(`D"N
51Testing软件测试网J3p a9o8~ B
解决方法:使用多个关联函数,对关联参数进行字符串操作,最后把生成的字符串保存成一个参数,供下面调用该参数的函数使用。
m*OO6g_?4zN0
&\MQ0h*T B0
脚本如下:51Testing软件测试网 LN+tq-vY
Action()
v(Z.Z0v!{d!gc^K;oL0
{51Testing软件测试网h7GRAY%j
int number1,number2;51Testing软件测试网Zh8G9{)V/j
char session11[1000];
V&D7`\'r(gka0
char string[1000];51Testing软件测试网RO"Wc ]
int length;
8VUx3c7XE#c1?0
char *stringtemp;51Testing软件测试网}R'o~b(Y
//char session22[20];
5g%~#Wg;PG6S0
web_reg_save_param("session1","LB=name=userSession value=","RB=.","Ord=ALL",LAST);51Testing软件测试网 _cEE!{_h&k RNm
web_reg_save_param("session2","LB=.","RB=<table border=0><tr><td> </td>","Ord=ALL",LAST);51Testing软件测试网 D SSpU
51Testing软件测试网U$F8AO E`-a
8H(D1cM0x6iGC0
web_url("WebTours",
%?.q(sO K;L9~8S0
"URL=http://127.0.0.1:6080/WebTours/",51Testing软件测试网vWg!N z4ba
"Resource=0",51Testing软件测试网Xn.zL4l.M
"RecContentType=text/html",
z\Z5I:[0
"Referer=",
3dH(a#w"X xn6h0
"Snapshot=t1.inf",51Testing软件测试网VS ^j2D H1JcY
"Mode=HTML",51Testing软件测试网vPbm)@
LAST);51Testing软件测试网/uB*gc;]H \
.[,HrX3NUs p0
strcpy(string,"");
J}L%Q.DD!H-mo0
strcpy(string,lr_eval_string("{session1_1}"));
#J+DK)Xt"f0
51Testing软件测试网:]3e+U4A%@9k+[
//strcpy(session1,"");
"X!O{|/zE0
"OCXH&M[/c coxbq0
sprintf(session11,"{session2_1}");
9j1X(d!QA-vHj5s#Q0
strcat(string,".");
c[,F)_ e [6zEJ0
length= strlen(lr_eval_string(session11));
{$s,ea1w0
length=length-2;51Testing软件测试网Eb:Y].s{5y
:r2s4E&Ek t%\V0
number1=atoi(lr_eval_string("{session1_count}"));
T%]q erx~?&M0
number2=atoi(lr_eval_string("{session2_count}"));
8Kq2d-` O5ANf0
51Testing软件测试网9i~/V^6V E
lr_output_message("%d,%d",number1,number2);51Testing软件测试网j[ r?]o XCw
51Testing软件测试网&XC5]E nQ
//lr_output_message("%d",length);51Testing软件测试网O`6oO:rjK
stringtemp=lr_eval_string(session11);
B%zL!i;VQ za0
strncat(string,stringtemp,length);51Testing软件测试网G2MC-E'\'RD:j#tF
//srcat(string,session11);
#l}!o8BdZ;w0
51Testing软件测试网 M+G8e;_ce-Ad@(^@
lr_save_string(lr_eval_string(string),"session");
*r8L4vsm)Y!|0
g/RxI*n!h/G0t3P W0
lr_output_message("%s",lr_eval_string("{session1_1}"));51Testing软件测试网;]F8LY%LWT]7L&u
lr_output_message("%s",lr_eval_string("{session2_1}"));
(Y$D,XE^0
51Testing软件测试网MRvaA_x3L
web_submit_data("login.pl",51Testing软件测试网!h^[ W*M
"Action=http://127.0.0.1:6080/WebTours/login.pl",51Testing软件测试网}&\)b'NF ]qJA wB
"Method=POST",
"Referer=http://127.0.0.1:6080/WebTours/nav.pl?in=home",
'e)jl [B7i*M0
"RecContentType=text/html",
"Snapshot=t2.inf",
*m:?]Q(iC%fWT0
"Mode=HTML",51Testing软件测试网@_$?6tF
ITEMDATA,
$i IN{7p%C6} Q b,D0
"Name=userSession", "Value={session}", ENDITEM,
j1p5}&gv0
"Name=username", "Value=jojo", ENDITEM,
gy){#qWIe0
"Name=password", "Value=bean", ENDITEM,51Testing软件测试网Z4fYHwH%V;S
"Name=JSFormSubmit", "Value=on", ENDITEM,
iF(v8yQ0gGMw0
"Name=login.x", "Value=50", ENDITEM,
)| Uld,E2EX0
"Name=login.y", "Value=10", ENDITEM,
-|5rd I(y,Q6a5ti0
LAST);
y9["OB0?vci0
lr_output_message("%s",lr_eval_string("{session}"));51Testing软件测试网?l.C] N2z5K
$g ?5M|9i0
return 0;51Testing软件测试网R&U:aV"DS D8L.i
}51Testing软件测试网CTXO5g5?:F\
有两个关联的参数,session1和session2,最后生成session,被web_submit_data函数调用。蓝色部分是需要特别注意的地方。51Testing软件测试网0d g8_nc
脚本编写调试过程中遇到的问题和解释:51Testing软件测试网jA X'|8A#d|2V2z }1a
1. web_reg_save_param()中如果没有指定Ord=ALL的话,默认是取的第一个符合左右边界的值,这样我们使用关联的参数时可以直接使用变量名,如session1
6X N eC)T;TA0
2. web_reg_save_param()中如果指定Ord=ALL的话,会生成一个数组,这样想取某个参数的话,需要使用的参数名需要加_和数组中的位置,如例子中取第一个session1_1,如果这时候仍然用session1,是取不到参数的值的.
9{!DSu/h0
3. 顺序问题:对关联参数相关的操作,需要放到包含该关联数据的请求函数之后,如上紫色部分代码用到关联的参数的语句,都需要放到web_url()之后,否则也不会取到关联的数据
9] bw$Q m"D H t0
4.注意lr_eval_string()函数和lr_save_string()函数的用法..
LoadRunner关联函数的脚本实例--如何操作关联参数的更多相关文章
- loadrunner 编写socket脚本实例(附服务端实现)
一.socket背景知识 这个咱就不废话了,网上一搜一大堆 二.本实例实现的功能 服务端接收客户端发送的字符串,并返回"5678succ"共8个字符 三.服务端实现(java代码) ...
- Loadrunner手动编写包含事务、检查点、关联等元素的脚本实例
一.前言: 本文适合初学者,包含很多细节,包括 二.准备: 1.以虚拟机中的Linux系统作为服务器,开启bugfree服务. 2.以fiddler作为抓包工具,辅助脚本开发. 3.脚本流程:bugf ...
- LoadRunner脚本参数化之自动关联和手动关联
一.关联的意义 1.关联的含义 关联(correlation):在脚本回放过程中,客户端发出请求,通过关联函数所定义的左右边界值(也就是关联规则),在服务器所响应的内容中查找,得到相应的值,以变量的 ...
- LoadRunner脚本实例来验证参数化的取值
LoadRunner脚本实例来验证参数化的取值 SINM {3]!G0问题提出: 主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d ...
- loadrunner 脚本开发-执行操作系统命令
脚本开发-执行操作系统命令 by:授客 QQ:1033553122 思路: 用loadrunner system()函数 函数原型: int system( const char *string ); ...
- Loadrunner脚本优化-参数化之关联MySQL数据库获取数据
脚本优化-参数化之关联MySQL数据库获取数据 by:授客 QQ:1033553122 测试环境: Loadrunner 11 Win7 64位 实操: 1. 安装MySQL ODBC驱动程序 O ...
- LoadRunner系列之—-02 基于webservice协议的接口测试(脚本实例)
Loadrunner 基于webservice协议的接口压力测试(脚本实例) 接口功能如下:请求接口,报文只有一个参数为证件号码:返回报文中,有证件号码是否能查到对应数据,查到几条数据. 思路:请求w ...
- 【原创】LoadRunner Java Vuser脚本的配置和调试指南
1 编写目的 本文介绍了Loadrunner多负载压力机的配置,并通过测试Java Vuser的数据库连接脚本对配置结果进行了验证,同时对配置过程中遇到的问题和解决的过程进行了记录,关于Java数据库 ...
- Loadrunner开发测试脚本
Loadrunner开发测试脚本 开发测试脚本可以通过录制,也可以手动开发,建议能录制的尽量录制,省时省力,不能录制的只能费力自己开发了,具体看项目情况来决定. 使用Loadrunner开发脚本过程中 ...
随机推荐
- ffmpeg-20160803-bin.7z
ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 f ...
- Greedy:Graveyard Design(POJ 2100)
墓地 题目大意,给定一个整数,要你找出他的平方和组合 太简单了....不过一开始我储存平方和想降低时间,后来发现会超内存,直接用时间换空间了,游标卡尺法 #include <iostream&g ...
- Divide and Conquer:Cable Master(POJ 1064)
缆绳大师 题目大意,把若干线段分成K份,求最大能分多长 二分法模型,C(x)就是题干的意思,在while那里做下文章就可以了,因为这个题目没有要求长度是整数,所以我们要不断二分才行,一般50-100次 ...
- JQuery 鼠标事件简介
mouseover事件于用户把鼠标从一个元素移动到另外一个元素上时触发,mouseout事件于用户把鼠标移出一个元素时触发. 下面为你详细介绍下jquery中的鼠标事件: (1):click事件:cl ...
- September 18th 2016 Week 39th Sunday
Be the king of the spiritual kingdom that is your heart. 在心灵的国土上,做自己的国王. Most often we are not able ...
- 绿色通道(codevs 3342)
题目描述 Description <思远高考绿色通道>(Green Passage, GP)是唐山一中常用的练习册之一,其题量之大深受lsz等许多oiers的痛恨,其中又以数学绿色通道为最 ...
- IOS8下,百度地图无法定位解决办法
通过在论坛中搜索,找到解决办法,我只是论坛的搬运工.分享如下: 1.在info.plist中加入: NSLocationAlwaysUsageDescription=YES NSLocatio ...
- hdu 1513
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1513 思路:正反分别求一次LCS,利用滚动数组对二取余滚动 #include<stdio.h&g ...
- mac版的PS和DW破解版安装
到网上找到破解版的安装文件,一般是一个dmg安装文件,和一个补丁文件,安装的时候,要先断网,然后点击软件,选试用安装,安装完毕后,不要打开软件,直接关闭掉,然后到应用程序里找到软件图标,右击打开包文件 ...
- Q3 2016 State of the Internet – Security Report
https://content.akamai.com/PG7476-Q3-2016-SOTI-Security-Report.html?utm_source=GoogleSearch&gcli ...