web_reg_cross_step_download()
注册请求以允许下载继续超出初始化完成之前(启动它的步骤)
int web_reg_cross_step_download(“URL [/ RE] = url”,LAST);
此函数在成功时返回LR_PASS(0),或在失败时返回LR_FAIL(1)。请注意,LR_PASS和LR_FAIL通常指示函数调用是否完成而没有异常,而不是测试步骤成功。
此功能可用于Web(点击和脚本),Web(HTTP / HTML),Oracle Web应用程序11i,PeopleSoft Enterprise,AJAX(点击和脚本)和SAP(点击和脚本)脚本。
参数说明:
“URL =”
“URL / RE =”:允许其下载的URL被超出启动完它的步骤。
指定的URL可以是绝对的,例如“URL = http://www.domain1/push.asp”,或正则表达式,例如“URL / RE = push \ .asp $”
LAST:此分隔符标记参数列表的结尾。
一般信息 :
web_reg_cross_step_download函数是一种注册类型的服务函数,用于支持对使用HTTP协议发送的任何内容采用浏览器推送技术的应用程序进行测试。此函数注册请求以允许步骤结束,而不等待指定URL的服务器响应完成。(也就是在不等待一个URL响应下载完成以后,去处理后续的请求或者事务操作)
这仅更改指定的URL的LoadRunner脚本步骤的典型行为,该步骤仅在步骤启动的所有下载完成后才结束。对于指定的URL,当请求已发送并且已尝试读取响应时,将满足步骤结束条件。
此功能不被记录。它可以在增强脚本时手动添加。
对web_reg_cross_step_download函数中指定的URL的响应可能包括后续步骤中所需的元素。在这种情况下,请将重试添加到使用这些元素的步骤。在操作函数的DESCRIPTION部分中,添加参数:
“RetryInterval= <msec>”
其中<msec>是一个正整数,指定在每次尝试查找目标元素之间等待的时间(以毫秒为单位)。
此参数可用于任何Web Click和Script操作函数,即使这些函数中没有记录。当使用RetryInterval时,当找到元素或步骤超时时,步骤完成。
根据要测试的系统的预期行为选择RetryInterval值。太短的间隔可能会影响LoadRunner负载生成器的性能,并使测试结果失真。太长的间隔将使事务更长,而不能准确反映服务器响应时间。
在向LoadRunner Analysis报告时有两个限制,这些限制适用于使用RetryInterval。重试期间消耗的时间可能无法准确报告,且超时可能无法可靠报告。
web_reg_cross_step_download影响由在web_reg_cross_step_download调用之后执行的步骤启动的匹配网址的下载,直到开始新的迭代。在每次迭代开始时重置注册,而与在每个迭代运行时设置上模拟新用户无关。但是,如果web_reg_cross_step_download调用在vuser_init或vuser_end中,则不会重置注册。
与web_reg_cross_step_download规范匹配的URL的下载可以继续,直到以下事件中的最早:
整个脚本运行结束。
服务器关闭连接。
已经达到响应Content-Length,或者已经接收到针对“Transfer-Encoding:chunked”的零长度响应块。
URL的目标对象(例如窗口,框架,DOM元素)被删除(例如,由于另一个下载到同一窗口)。
迭代的开始。这不适用于在“vuser_init”部分末尾注册和活动的网址。
下载在vuser_end部分保持活动状态。
无论URL是在后续步骤中显式指定还是隐式地指定,都会注册下载URL。例如,隐式URL,它们可以下载为框架,图像或重定向的结果。
使用正则表达式
无法指定确切的网址时,需要指定正则表达式。需要正则表达式的一种情况是,当URL包含从脚本的一个执行变为另一个脚本的动态值时。另一种情况是当指定部分URL时,例如“URL / RE = http://www.domain1/”。不带/ RE的网址参数只匹配整个字符串。
例如,诸如“URL / RE = push \ .asp $”的正则表达式将匹配:
“http://www.domain1/push.asp”
“http://www.domain2/push.asp”
但不匹配:
“http://www.domain1/push.asp?query”
“http://www.domain2/pop.asp”
示例:web_reg_cross_step_download
在以下示例中,web_reg_cross_step_download允许在下载应用程序启动帧时结束这些步骤。
web_reg_cross_step_download(
“URL /RE = start_a \ .htm $”,
LAST);