loadrunner 脚本开发-web_custom_request函数详细介绍
脚本开发-web_custom_request函数详细介绍
by:授客 QQ:1033553122
c语言版本:
int web_custom_request(const char *RequestName, ,
[EXTRARES, ,] LAST );
参数说明:
RequestName step名称,即请求名。
List of Attributes 属性列表
注意:属性名称大小写敏感
EXTRARES 界定参数,表名接下来的参数将是个资源属性列表
LAST 表名列表结束的标记
List of Attributes
URL - 统一资源定位器,通常为请求链接地址
Method - 请求方法:POST、GET
TargetFrame - 包含当前链接或资源的frame的名称
EncType - 提交请求使用的编码类型(type of encoding)。EncType指定“Content-Type”请求头的值,比如“text/html”。web_custom_request不处理未编码的请求体。Body参数指定的请求体会使用指定的编码。因此,如果指定的Enctype如果不匹配请求体,可能会引发服务端错误。通常情况下,按照录制所得,不对Enctype进行编辑。
如果指定了“EncType”,那么它将会覆盖web_add_[auto_]header函数指定的Content-Type。如果“EncType=” (空值),不会生成“Content-Type” 请求头;如果省略了“EncType”时,那么使用web_add_[auto_]header函数指定的。如果既没有指定EncType也没使用web_add_[auto_]header函数设定请求头,且“Method=POST”,那么,将使用“application/x-www-form-urlencoded”做为默认值。其他情况下,不会生成Content-Type请求头。
RecContentType - 指定了Content–Type 响应头的类型,比如text/html,application/x-javascript。当没有设置Resource属性时,用它来确定目标URL是否是可录制的资源。
Refer - 指定引用的页面
Body - 请求体
Raw Body - 请求体被当作指向数据的指针来传递
BodyFilePath - 需要作为请求体传递的文件路径,不能和Body一起使用,或者任何Body、Raw Body Attribute的属性: BodyBinary, BodyUnicode, RAW_BODY_START 或 Binary=1
Resource - 一个表明URL是否资源的值
Resouce=1,表明URL为一个资源,意味着当前操作与所在脚本的成功与否关系不大。在下载资源时如果发生错误,将当作警告而不是错误来处理的
是否下载URL受“Run-Time Setting—Browser Emulation--Download non-HTML resources” 这个选项的影响。勾选该选项,则不按HTML的形式解析响应信息。
“Resource=0”,表明此URL是重要的,不受发送请求(RTS)的影响,在需要时也会解析它。
ResourceByteLimit - 下载web页面资源的极限大小。当达到设置的极限后,不再下载资源,仅仅对需要下载的资源起作用。
Snapshot - 快照的文件名(.inf为后缀
Mode - 录制级别:HTML、HTTP
HTML级别:在当前Web界面上直观的录制HTML操作。这些操作被录制为web_url、web_link、web_image、web_submit_form等step。VuGen仅仅录制返回HTML页面的请求,不处理脚本和应用程序。
HTTP级别:VuGen把所有的请求录制为web_url step,不生成web_link、web_image、web_submit_form这些函数。这种方法更为灵活,但是生成的脚本不够直观。
ContentEncoding - 请求使用指定的方法(gzip或者deflate)对请求体进行编码,相应的“Content-Encoding:” HTTP头会随此请求一起发送。仅适用于web_custom_request和web_submit_data。
List of Resource Attributes
list of Attributes由非HTML机制的web页面生成,包含Javascript,Activex,Java applets和Flash请求的资源。VuGen Recording Options中可设置,把这些元素录制在当前脚本step中或者单独的step(查看Recording in HTML–Based Mode)
当录制在当前脚本的step中时,额外的资源被当作参数列出,支持以下资源属性:
URL 需要加载的web资源
Referer URL引用的web页面
ENDITEM 表示list中,每个资源结束的标记
相比录制每个资源为一个单一的step,按这种模式录制non-HTML元素可以精简脚本,增加可读性。
当遇到一个附加的资源时,例如,一个Javascript,VuGen录制器添加资源到附加资源列表(Resource Attributes参数列表)。当回放脚本时,会请求该资源。如果资源规律性变化,可使用关联函数参数化该资源。
例子:
web_reg_save_param("extrares_11",
"LB/IC=
"RB=\"",
"Ord=11",
LAST );
web_url("web_url",
"URL=http://lazarus/html/links.html",
"TargetFrame=",
"Resource=0",
"Referer=",
"Mode=HTTP",
EXTRARES,
"URL={extrares_11}", ENDITEM,
LAST );
函数使用范围:
支持所有Web脚本,和以HTTP协议或者无线会话协议(WSP,Wireless Session Protocol)运行的WAP脚本
loadrunner 脚本开发-web_custom_request函数详细介绍的更多相关文章
- Loadrunner 脚本开发-soap_request函数介绍及WebService接口测试
脚本开发- soap_request函数介绍及WebService接口测试 by:授客 QQ:1033553122 函数介绍 soap_request 函数执行一个SOAP请求 函数原型 int so ...
- loadrunner 脚本开发- web_url函数详解
脚本开发- web_url函数详解 by:授客 QQ:1033553122 加载指定url的web页面(GET请求) C语言函数 int web_url( const char *StepName ...
- Loadrunder脚本篇——web_custom_request函数介绍
c语言版本: int web_custom_request(const char *RequestName, , [EXTRARES, ,] LAST ); 参数说明: RequestName ...
- loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取
转自:http://blog.sina.com.cn/s/blog_13cc013b50102v49c.html(查看原文) 在VuGen中默认使用{}的字符串称为参数 注意:参数必须在双引号中才能用 ...
- Loadrunner脚本开发规范
Loadrunner脚本开发规范 目录 1.一般约定... 3 2.代码注释约定... 4 3.格式化代码... 5 1.一般约定 1.1具体脚本规则,必须在具体代码中加注释,以便脚本开发人员阅读和理 ...
- Signal ()函数详细介绍 Linux函数
http://blog.csdn.net/ta893115871/article/details/7475095 Signal ()函数详细介绍 Linux函数 signal()函数理解 在<s ...
- Signal ()函数详细介绍 Linux函数(转)
Signal ()函数详细介绍 Linux函数 收藏人:紫火神兵 2012-09-27 | 阅:5659 转:22 | 来源 | 分享 signa ...
- python内置函数详细介绍
知识内容: 1.python内置函数简介 2.python内置函数详细介绍 一.python内置函数简介 python中有很多内置函数,实现了一些基本功能,内置函数的官方介绍文档: https: ...
- Loadrunner 脚本开发-利用web_custom_request函数进行接口测试
脚本开发-利用web_custom_request函数进行接口测试 by:授客 QQ:1033553122 一.POST + JSON格式参数 例: web_custom_request(" ...
随机推荐
- Task异步编程,刨根到底
1. 编译器到底对await做了什么 await 一个异步操作的时候,实际上编译器会创建一个状态机,这个状态机包含了调用者的上下文变量,状态机使用yield迭代器实现,状态机由clr调度,每次运行都会 ...
- 线程中的同步辅助类Exchanger
Exchanger 允许两个线程在 collection 点交换对象,它在多流水线设计中是有用的. 允许两条线程之间交换数据.Exchanger的exchange方法是阻塞的,当其他线程也调用了该方法 ...
- 字符、字符串和文本的处理之Char类型
.Net Framework中处理字符和字符串的主要有以下这么几个类: (1).System.Char类 一基础字符串处理类 (2).System.String类 一处理不可变的字符串(一经创建,字符 ...
- ThreadPoolExecutor 中的 shutdown() 、 shutdownNow() 、 awaitTermination() 的用法和区别
Java并发编程中在使用到ThreadPoolExecutor时,对它的三个关闭方法(shutdown().shutdownNow().awaitTermination())的异同点如下: shutd ...
- Chrome 的 Material Design Refresh UI初探
今天Chrome自动升级到69.0.3497.92, 发现UI已经变成了"Material Design Refresh". Chrome 浏览器的页面标签已经不再像以往那样倾斜和 ...
- 【工具向01】——markdown 文本编辑语言相关
markdown简介 Markdown是一种轻量级标记语言创始人为约翰·格鲁伯.它允许人们"使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML或HTML文档".这种语言吸 ...
- CNN网络架构演进
卷积神经网络可谓是现在深度学习领域中大红大紫的网络框架,尤其在计算机视觉领域更是一枝独秀.CNN从90年代的LeNet开始,21世纪初沉寂了10年,直到12年AlexNet开始又再焕发第二春,从ZF ...
- 【JS】input输入框只能输入数字
一.实现思路 input只能输入纯数字的思路其实很简单,监听输入框值的变化,每次输入检索输入框的值,将非数字的字段替换成空,再将此值赋予给输入框. 关键代码: \d:匹配数字 ^/d:全文匹配非数字 ...
- 带你了解CSRF和XSS(二)
什么是CSRF? CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XS ...
- Java 并发编程常识 —— by 梁飞
参考 :梁飞 并发编程常识