LoadRunner WinSocket协议的扩展关联函数

上一篇 / 下一篇  2011-12-19 10:17:07 / 个人分类:LoadRunner

 

;d ]P*K1l~ c0X0

lrs_save_param_exlrs_save_param的扩展函数,包含了lrs_save_param的基本功能。其函数语法结构如下:

hT'\0~ G {/V ~duP0

intlrs_save_param_ex( char *s_desc,char *type, char *buff, intoffset, intlength, char *encoding, char *param );

*?"wA1wt q&Xw8Z0

s_desc表示指定的Socket名称;

4Y*H3h;KJ:~N!g(h0

type表示要存储的数据类型,有“user”、“static”、“received”三种,分别代表用户数据(脚本中自己定义的字符串)、静态数据(data.ws中录制的数据)、最后接收的缓冲区数据;51Testing软件测试网 V#R!A&hv

buff表示要保存哪个缓冲区的数据。这个参数与type有对应关系,如果type是“user”、“static”两种,则需要指定具体的buffer名称;如果是“received”则可以忽略这个参数;

:nf7~ b1K0U2PQq0

offset表示在buffer中的偏移量;

n N-R`4D,OQm0

length表示要从buffer中保存的字节数;51Testing软件测试网9rp.z)NV H0J

encoding表示的是解码方式。对于“user”类型的buffer,需要指定其为ascii或者ebcdic中的一种,NULL值表示默认的格式为ascii。对于“static”与“received”两种类型的buffer,则可以忽略这个参数,使用客户端的原始编码格式来进行解码;51Testing软件测试网,tc/}z/IGXq

param表示要保存的参数名称。51Testing软件测试网 ^ }p7t9?$@R

3-11演示了这三种用法:UserBuffer是脚本中自定义的字符串,存储的内容是"AAAAAThis is a userbuffer test!",执行代码:

8|"u(AZ5lH%mk0

lrs_save_param_ex("socket0","user",UserBuffer,5,26,NULL,"Param_User");51Testing软件测试网1r-W6QjXT

后将会把第5个字符后的26个字符即“This is a userbuffer test!”保存到Param_User中;

/?Tbh6PPG0

如果buf1data.ws中的内容如下:51Testing软件测试网Y+j+N ONDk r

recv buf1 3851Testing软件测试网4EN/hE {5z

      "Get your command:Hello client!,长度13."

$T^;T({ ?@0G0

执行代码:

4Z+O5w+Fa8`'N L)n*l m-]0

lrs_save_param_ex("socket0","static","buf1",0,30,NULL,"Param_Static");

IZ&M6g#P9J!W.k0

后,将会把buf1中从0开始的30个字符即“Get your command:Hello client!”保存到参数Param_Static中。51Testing软件测试网'k{%r*k"x

如果lrs_receive最后接收到的数据包内容为Length=11Successful.AAAAA”,则执行代码:

gc6GV?D@0

lrs_save_param_ex("socket0","received",NULL,9,11,NULL,"Param_Received");

4I-{*NNl[b0

后,将会把从"socket0"收到的缓冲区数据中第9个字节后的11个字节即“Successful.”保存到参数Param_Received中。51Testing软件测试网u,a*m+[!|/xo


TAG:

 

评分:0

我来说两句

Open Toolbar