Web常用函数介绍(LoadRunner相关)

简介: 介绍大纲:1. web_url2. web_image3. web_link4. web_submmit_form 详细介绍: 一. web_url web_url 语法: Int Web_url(const char *name, const char * url, , [EXTRARES,,LAST) 返回值 成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)。

介绍大纲:
1. web_url
2. web_image
3. web_link
4. web_submmit_form

详细介绍:

一. web_url

web_url
语法:
Int Web_url(const char *name, const char * url, <Lists of Attributes>, [EXTRARES,<Lists of Resource Attributes>,LAST)

返回值
成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)。
参数:
Name:VuGen中树形视图中显示的名称,在自动事务处理中也可以用做事务的名称。
url:页面url地址。
List of Attributes:(支持下列属性)
1 TargetFrame
2 TargetBrowser or TargetBrowserOrdinal
3 RecContentType - 在录制期间响应的报头文本类型(text/html, application/x- javascript),这是为了确认目标URL是否是可录制的资源。
4 Referer - 要提交页面请求的URL .(获得当前页面,如果明确指出了位置,那么这个属性无效或者忽略。URL中写明了,要获取的页面)
5 Resource - 指定一个值说明这个URL是否是一个资源,0 表示不是资源,1 表示是资源
6 Snapshot - 快照,快照文件名称,用来关联用的。
7 Mode - 录制的等级,是否是HTML或者HTTP模式。

EXTRARES:分隔符,表示下列列表,是由script、active、java applet、flash产生的请求(具体设置在,Recorded options --Recording--选择 html base scritp --- html Reccorded 可以设置是否需要录制这些东西。)。
List of Resource Attributes:下载的资源属性
URL
The URL (Uniform Resource Locator) of the web resource to load
通过URL地址(资源统一定位器)要下载的web资源
Referer
The URL of the referring web page.
发送下载请求的页面。比如一个swf要下载一个图片,那么swf就是referer
ENDITEM
A marker that indicates the end of each resource in the list.
列表中每个资源的结束标志符
LAST:属性列表结束的标记符。
说明
Web_url根据函数中的URL属性加载对应的URL,不需要上下文。
可以使用web_url 模拟从FTP服务器上下载文件。web_url 函数会使FTP服务器执行文件被真实下载时的操作。除非手工指定了"FtpAscii=1",下载会以二进制模式完成。

在录制选项中,Toos—Recording Option下,Recording选项中,有一个Advanced HTML选项,可以设置是否录制非HTML资源,
只有选择了“Record within the current script step”时,List of Resource Attributes才会被录制到。
非HTML资源的例子是gif和jpg图象文件。

通过修改HTTP头可以传递给服务器一些附加的请求信息。使用HTTP头允许请求中包含其他的内容类型(Content_type),象压缩文件一样。还可以只请求特定状态下的web页面。

所有的Web Vusers ,HTTP模式下的WAP Vusers或者回放模式下的Wireless Session Protocol(WSP),都支持web_url函数。

Demo:

Action()
{
    web_url("sportssnsapitest", 
            "URL=http://sportssnsapitest.xiaoyi.com/pt-0.1/",
            LAST);
    return 0;
}

 

二. web_image

语法:
Int web_image (const char *StepName, , [EXTRARES, ,] LAST );

返回值
成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)。

参数:
StepName:VuGen中树形视图中显示的名称,在自动事务处理中也可以用做事务的名称。

List of Attributes(服务器端和客户端映射的图片):SRC属性是一定会被录制到的,其他的ALT、Frame、TargetFrame、Ordinal则是有的话会被录制到。

1、ALT:描述图象的元素。用鼠标指向图象时,所浮出来的文字提示。

2、SRC:描述图象的元素,可以是图象的文件名. 如: button.gif。也可以使用SRC/SFX来指定图象路径的后缀。所有拥有相同此后缀的字符串都会被匹配到。

3、Frame:录制操作时所在的Frame的名称。

4、TargetFrame:见List of Attributes的同名参数。

5、Ordinal:参见Web_link的同名参数。

List of Attributes(客户端映射的图片):

1、AreaAlt:鼠标单击区域的ALT属性。

2、AreaOrdinal:鼠标单击区域的顺序号。

3、MapName:图象的映射名。

List of Attributes(服务器端映射的图片):尽管点击坐标不属于属性,但还是以属性的格式来使用。

1、Xcoord:点击图象时的X坐标。

2、Ycoord:点击图象时的Y坐标。

EXTRARES:分隔符,标记下一个参数是资源属性的列表了。

List of Resource Attributes:参见List of Resource Attributes一节。

LAST:属性列表结束的标记符。

说明

web_image模拟鼠标在指定图片上的单击动作。此函数必须在有前置操作的上下文中使用。

在Toos—Recording Option,如果录制级别设为基于HMTL的录制方式时,web_image才会被录制到。

web_image支持客户端(client-side)和服务器端server-side的图片映射。

在录制选项中,Toos—Recording Option下,Recording选项中,有一个Advanced HTML选项,可以设置是否录制非HTML资源,只有选择了“Record within the current scrīpt step”时,List of Resource Attributes才会被录制到。非HTML资源的例子是gif和jpg图象文件。

通过修改HTTP头可以传递给服务器一些请求附加信息。使用HTTP头允许请求中包含内容,如同压缩文件一样。还可以只请求特定状态的web页面。

web_image支持Web虚拟用户,不支持WAP虚拟用户。

例子

下面的例子模拟用户单击Home图标以回到主页(黑体部分):

web_url(“my_home”, “URL=http://my_home/”, LAST);

web_link(“Employees”, “Text=Employees”, LAST);

web_image(“Home.gif”, “SRC=../gifs/Buttons/Home.gif”, LAST);

web_link(“Library”, “Text=Library”, LAST);

web_image(“Home.gif”, “SRC=http://www.cnblogs.com/gifs/buttons/Home.gif”, LAST);

下面的例子模拟用户在客户端映射的图片上单击:

web_image(“dpt_house.gif”,

“Src=../gifs/dpt_house.gif”,

“MapName=dpt_house”,

“AreaOrdinal=4″,

LAST);

下面的例子模拟用户在服务端映射的图片上单击:

web_image(“The Web Developer’s Virtual Library”,

“Alt=The Web Developer’s Virtual Library”,

“Ordinal=1″,

“XCoord=91″,

“YCoord=17″,

LAST);

下面是一个使用文件名后缀的例子:它指定了dpt_house.gif作为后缀,所以象../gifs/dpt_house.gif、/gifs/dpt_house.gif、gifs/dpt_house.gif、/dpt_house.gif等都会匹配到。

web_image(“dpt_house.gif”,

“Src/sfx=dpt_house.gif”, LAST);

三. web_link

语法:
Int web_link (const char *StepName, , [EXTRARES, ,] LAST );

返回值
成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)。

参数:
StepName:VuGen中树形视图中显示的名称,在自动事务设置中也被用做事务名称。

List of Attributes:支持下列的属性:

1.Text:超链接中的文字,必须精确匹配。

2.Frame:录制操作时所在的Frame的名称。

3.TargetFrame、ResourceByteLimit:见List of Attributes一节。

4.Ordinal:如果用给出的属性(Attributes)筛选出的元素不唯一,那么VuGen使用此属性来指定其中的一个。例如:“SRC=abc.gif”,“Ordinal=3”标记的是SRC的值是“abc.gif”的第3张图片。

EXTRARES:表明下面的参数将会是list of resource attributes了。

LAST:结尾标示符。

说明

模拟鼠标在由若干个属性集合描述的链接上进行单击。此函数必须在前置动作的上下文中才可以执行。

web_link 仅仅在基于HTML的录制方式中才会被VuGen捕捉到。

非HTML生成的资源的例子有.gif 和.jpg图像。对于List of Resource Attributes参数来说,仅仅当Recording Options–Recording –HTML-based scrīpt– Record within the current scrīpt step选项被选中时,它们才会被插入到代码中。

可以通过改变HTTP头信息给服务器传递一些附加信息。使用HTTP头信息可以,允许响应体中包含其他的内容类型(Content-Type),例如压缩文件,或者只有满足了特定的状态才去请求web页。

此函数值支持Web虚拟用户,不支持WAP虚拟用户。

四. web_submmit_form

语法:
Int web_submit_form (const char *StepName, , , ITEMDATA, , [ EXTRARES, ,] LAST );

返回值
成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)。

参数:
StepName:Form的名字。VuGen中树形视图中显示的名称,在自动事务处理中也可以用做事务的名称。
List of Attributes:支持以下属性:

1.Action:Form中的ACTION属性,指定了完成Form中的操作用到的URL。也可以使用“Action/sfx” 表示使用此后缀的所有Action。

2.Frame:录制操作时所在的Frame的名称。

3.TargetFrame、ResourceByteLimit:见List of Attributes的同名参数。

4.Ordinal:参见Web_link的同名参数。

VuGen通过记录数据域唯一的标识每个Form。如果这样不足以识别Form,VuGen会记录Action 属性。如果还不足以识别,则会记录Ordinal 属性,这种情况下不会记录Action属性。

List of Hidden Fields:补充属性(Serves)。 通过此属性可以使用一串隐含域来标识Form。使用下面的格式:

STARTHIDDENS,

“name=n1″, “value=v1″, ENDITEM,

“name=n2″, “value=v2″, ENDITEM,

ENDHIDDENS,

List of Data Fields

Data项用来标识form。Form是通过属性和数据来共同识别的。

使用下面的格式来表示数据域列表

“name=n1″, “value=v1″, ENDITEM,

“name=n2″, “value=v2″, ENDITEM,

ITEMDATA:Form中数据和属性的分隔符。

EXTRARES:一个分隔符,标记下一个参数是资源属性的列表了。

List of Resource Attributes:参见List of Resource Attributes一节。

LAST:属性列表结束的标记符。

说明

web_submit_form 函数用来提交表单。此函数可能必须在前一个操作的上下文中执行。在Toos—Recording Option,只有录制级别设为基于HMTL的录制方式,web_image才会被录制到。

在录制选项中,Toos—Recording Option下,Recording选项中,有一个Advanced HTML选项,可以设置是否录制非HTML资源,只有选择了“Record within the current scrīpt step”时,List of Resource Attributes才会被录制到。非HTML资源的例子是gif和jpg图象文件。

通常情况下,如果录制了web_submit_form 函数,VuGen会把“name”和“value”一起录制到ITEMDATA属性中。如果不想在脚本中以明文显示“value”,可以对它进行加密。把“Value”改为“EncryptedValue”,然后把录制到的值改为加密后的值。

例如:可以把 “Name=grpType”, “Value=radRoundtrip”, ENDITEM

改为:”Name=grpType”, EncryptedValue=409e41ebf102f3036b0549c799be3609″, ENDITEM

如果你完整的安装了LoadRunner,那么打开开始菜单–Mercury LoadRunner—Tools–Password Encoder,这个小工具是用来加密字符串的。把需要加密的值粘贴到Password一栏,再点Generate按钮。加密后的字符串会出现在Encoded string框中。接着点Copy按钮,然后把它粘贴到脚本中,覆盖原来显示的“Value”。

加密的另一种方法时使用lr_decrypt函数。方法:选择整个字符串,例如“Value=radRoundtrip”(注意不要选择引号),右击鼠标,选择Encrypt string选现,脚本会变为:

“Name=grpType”, lr_decrypt(“40d176c46f3cf2f5fbfaa806bd1bcee65f0371858163″), ENDITEM,

web_submit_form支持Web虚拟用户,不支持WAP虚拟用户。

以上是loadrunner录制、阅读、编辑、增强脚本时,常用到的。

http://www.cnblogs.com/bayonetxxx/archive/2013/01/15/2860729.html

 

相关文章
|
5月前
|
JSON JavaScript Go
Go 语言学习指南:变量、循环、函数、数据类型、Web 框架等全面解析
掌握 Go 语言的常见概念,如变量、循环、条件语句、函数、数据类型等等。深入了解 Go 基础知识的好起点是查阅 Go 官方文档
529 2
|
11天前
|
JavaScript 前端开发 索引
【Web 前端】jQuery 里的 each() 是什么函数?你是如何使用它的?
【5月更文挑战第2天】【Web 前端】jQuery 里的 each() 是什么函数?你是如何使用它的?
|
11天前
|
JavaScript 前端开发 C++
【Web 前端】JavaScript window.onload 事件和 jQuery ready 函数有何不同?
【5月更文挑战第2天】【Web 前端】JavaScript window.onload 事件和 jQuery ready 函数有何不同?
|
11天前
|
前端开发 JavaScript
【Web 前端】$(document).ready() 是个什么函数?为什么要用它?
【5月更文挑战第2天】【Web 前端】$(document).ready() 是个什么函数?为什么要用它?
|
12天前
|
前端开发 JavaScript UED
【Web 前端】异步函数
【5月更文挑战第1天】【Web 前端】异步函数
|
12天前
|
自然语言处理 前端开发
【Web 前端】es6 中的箭头函数?
【5月更文挑战第1天】【Web 前端】es6 中的箭头函数?
|
14天前
|
前端开发 JavaScript 网络架构
【Web 前端】箭头函数和普通函数有什么区别?
【4月更文挑战第22天】【Web 前端】箭头函数和普通函数有什么区别?
|
15天前
|
存储 Serverless 网络安全
Serverless 应用引擎产品使用之阿里云函数计算中的Web云函数可以抵抗网站对DDoS攻击如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
23 0
|
11月前
|
PHP
【web 开发基础】PHP 的函数工作原理 (28)
仅当函数被调用后,函数中的语句才会被执行,目的是根据需求完成一些特定的任务。而函数执行完毕后,控制权将返回到调用函数的地方。也就是当代码运行到函数调用的时候,程序的执行就会进入被调用的函数中,执行被调用函数中的代码语句,函数就能够以返回值的方式将信息返回给程序。通过在程序中使用函数,可以进行结构化编程。在结构化编程中,各个任务是由独立的程序代码段完成的。而函数正是实现“独立程序代码段”最理想的方式,所以函数和结构化编程的关系非常的紧密。结构化编程不仅在PHP中很重要,在其他的编程语言中一样占有重要地位,结构化编程之所以卓越且重要
61 0
|
11月前
|
PHP
【web 开发基础】PHP 自定义函数之函数的返回值-PHP 快速入门 (27)
在定义函数时,函数名后面括号中的参数列表是用户在调用函数时用来将数据传递到函数内部的接口,而函数的返回值则将函数执行后的结果返回给调用者。如果函数没有返回值,就只能算一个执行过程。只依靠函数做一些事情还不够,有时更需要在程序脚本中使用函数执行后的结果。由于变量的作用域的差异,调用函数的脚本程序不能直接使用函数体里面的信息,但可以通过关键字return向调用者传递数据。return语句在函数体中使用时,有以下两个作用: 1. return语句可以向函数调用者返回在函数体中任意确定的值。 2. 将程序控制权返回到调用者的作用域,即退出函数。在函数体中如果执行了return语句,它后面的语句就不会被
75 0