Loadrunner中web_custom_request ()方法的说明
上一篇 / 下一篇 2012-11-23 15:12:31 / 个人分类:LoadRunner
W:|4? r1g _9@!W0Int web_custom_request (const char *RequestName, <List of Attributes>,
[EXTRARES, <List of Resource Attributes>,] LAST );
`v,s]*@9p Z S0返回值
'x5K/aqO3jEA0返回LR_PASS(0)代表成功,LR_FAIL(1)代表失败。51Testing软件测试网[RfE3VUp j2L3W
参数:
6Be6q;{P/UF0RequestName:步骤的名称,VuGen中树形视图中显示的名称。
List of Attribute:支持的属性有以下几种:
+c\W+Jxu)AB01. URL:页面地址。51Testing软件测试网DEre#^
2. Method :页面的提交方式,POST或GET。51Testing软件测试网$x2EfZW1bC @
3. TargetFrame:包含当前链接或资源的frame的名称。参见List of Attributes的同名参数。51Testing软件测试网/|@-b6W3U8K~&P
4. EncType:编码类型。
|(l?O1l9b5[05. RecContentType:响应头的内容类型。参见List of Attributes的同名参数。51Testing软件测试网9G)Fi2Y?"S P0Kf
6. Referer:参见List of Attributes的同名参数。
R"s#ZzW&uHj07. Body:请求体。参见List of Attributes的同名参数。51Testing软件测试网 Vy-cx5Mc:_r
8. RAW BODY:参见List of Attributes的同名参数。51Testing软件测试网8PH W ](kj#U
9. BodyFilePath:作为请求体传送的文件的路径。它不能与下面的属性一起使用:Body,或者其他Body属性或Raw Body属性包括BodyBinary,BodyUnicode, RAW_BODY_START或Binary=1。51Testing软件测试网\u3^1t(wV*V][*L;@9\
10. Resource、ResourceByteLimit、Snapshot、Mode:参见List of Attributes的同名参数。51Testing软件测试网h `8^ac;@,U*oQ
11. ExtraResBaseDir:参见List of Attributes的同名参数。51Testing软件测试网/~pSU'v,h
12. UserAgent:用户代理,它是一个HTTP头的名字,用来标识应用程序,通常是浏览器,它呈现的是用户和服务器的交互。51Testing软件测试网&PbS{Sb9dm
例如:头信息“User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)”识别的是Window NT下的IE浏览器6.0。其他的User-Agent的值用来描述其他的浏览器,或者非浏览器程序。通常,一个应用程序中所有的请求都使用相同的用户代理,录制者作为一个运行时参数来指定(Run-Time Setting—Browser Emulation—User Agent)。不管怎么说,即使是在一个简单的浏览器进程中,仍有可能会用到直接与服务器交互的非浏览器组件(例如ActiveX控件),通常他们有着不同于浏览器的用户代理属性。指定“UserAgent”表示这是一个非浏览器的请求。指定的字符串被HTTP头“User-Agent:” 使用,在某些情况下,它同时会影响回放脚本时的行为。例如,不使用浏览器缓存,假设指定的URL属于资源等等。51Testing软件测试网(Z8w(Pn x&a
LoadRunner本身不检查指定的字符串与浏览器本身的值是否相同。
"h+qeR-R3gXx ~p013. Binary:“Binary=1”表示页面请求体中的每一个以file://x/##形式出现的值(在这里“##”代表2个十六进制数字),都会被替换为单字节的十六进制的值。51Testing软件测试网/]{H0m#s1v:}]
如果“Binary=0”(默认值),所有的字符序列只是按照字面的值传递。51Testing软件测试网H*_o ^9Q;}
需要注意双斜杠的用法。在C编译器中双斜杠被解释为单斜杠。如果不需要零字节,单斜杠可以在Binary不等于1的情况下使用(例如,使用\x20代替file://x20/)。如果需要零字节,那么只能使用file://x00/且设置 “Binary=1”,\x00在逻辑上会被截断。
;~8q@ u/O:KV(u014. ContentEncoding
WB[_ZY0GJy#B0指定请求体的使用指定的方式(gzip或者deflate)进行编码(例如,压缩),相应的“Content-Encoding:” HTTP头会和此请求一起发送。这个参数适用于web_custom_request和web_submit_data。
1f z.~7s.T$l&|U Us0EXTRARES:表明下面的参数将会是List Of Resource Attributes了。 51Testing软件测试网4kI4~5[7QEmo
LAST :结尾的标示符。
sm ?-gB,S0l kG6Y0e0说明
$H`wu$Y.T0允许使用任何方法和请求体创建自定义的HTTP请求。默认情况下,当VuGen无法使用其他函数解释用户请求时,会生成此函数。
使用Add对话框(在脚本环境下,右击鼠标,会出现快捷菜单),可以手工插入此函数。要指定特殊的HTTP头信息,需要增加web_add_header或者web_add_auto_header函数。51Testing软件测试网B;A[8L X
RecContentType:参见List of Attributes的同名参数。51Testing软件测试网"nLq%c7L'C
EncType:编码类型。此参数给出一个内容类型(Content-Type),指定其做为回放脚本时“Content-Type”请求头的值,例如 “text/html”。Web_custom_request函数不处理未编码的请求体。请求体参数将会使用已经指定的编码方式。因此,如果指定了不匹配HTTP请求体的“EncType”,会引发服务端的错误。通常我们建议不要手动修改录制时的“EncType”值。