Loadrunner的函数收集
- 1.int web_url( const char *StepName, const char *url, <List of Attributes>, [EXTRARES, <List of Resource Attributes>,] LAST );
释义:加载指定的web页面(get请求方式),发送一个标准的http get请求,无需依赖其它请求
参数说明:
StepName:在测试结果中显示的名称,也用作自动事务的事务名称
url:需要访问的网页地址,格式为“URL = <address>”
List of Attributes:属性列表,支持下列属性
EXTRARES:分界参数,指示下一个参数将是资源属性列表
List of Resource Attributes:资源属性列表,EXTRARES后的资源是由script、active、java applet、flash、CSS产生的请求,支持下列资源属性
LAST:参数列表结束标记
返回值:成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)
————————————————
- 2.web_custom_request语法:
Int web_custom_request (const char *RequestName, <List of Attributes>,
[EXTRARES, <List of Resource Attributes>,] LAST );
返回值
返回LR_PASS(0)代表成功,LR_FAIL(1)代表失败。
参数:
RequestName:步骤的名称,VuGen中树形视图中显示的名称。
List of Attribute:支持的属性有以下几种:
1. URL:页面地址。
2. Method :页面的提交方式,POST或GET。
3. TargetFrame:包含当前链接或资源的frame的名称。参见List of Attributes的同名参数。
4. EncType:编码类型。
5. RecContentType:响应头的内容类型。参见List of Attributes的同名参数。
6. Referer:参见List of Attributes的同名参数。
7. Body:请求体。参见List of Attributes的同名参数。
8. RAW BODY:参见List of Attributes的同名参数。
9. BodyFilePath:作为请求体传送的文件的路径。它不能与下面的属性一起使用:Body,或者其他Body属性或Raw Body属性包括BodyBinary,BodyUnicode, RAW_BODY_START或Binary=1。
10. Resource、ResourceByteLimit、Snapshot、Mode:参见List of Attributes的同名参数。
11. ExtraResBaseDir:参见List of Attributes的同名参数。
12. UserAgent:用户代理,它是一个HTTP头的名字,用来标识应用程序,通常是浏览器,它呈现的是用户和服务器的交互。
例如:头信息“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属于资源等等。
LoadRunner本身不检查指定的字符串与浏览器本身的值是否相同。
13. Binary:“Binary=1”表示页面请求体中的每一个以file://x/##形式出现的值(在这里“##”代表2个十六进制数字),都会被替换为单字节的十六进制的值。
如果“Binary=0”(默认值),所有的字符序列只是按照字面的值传递。
需要注意双斜杠的用法。在C编译器中双斜杠被解释为单斜杠。如果不需要零字节,单斜杠可以在Binary不等于1的情况下使用(例如,使用\x20代替file://x20/)。如果需要零字节,那么只能使用file://x00/且设置 “Binary=1”,\x00在逻辑上会被截断。
14. ContentEncoding
指定请求体的使用指定的方式(gzip或者deflate)进行编码(例如,压缩),相应的“Content-Encoding:” HTTP头会和此请求一起发送。这个参数适用于web_custom_request和web_submit_data。
EXTRARES:表明下面的参数将会是List Of Resource Attributes了。
LAST :结尾的标示符。
__________________________________________________________________
- 3.web_add_auto_header 向所有后面的 HTTP 请求中添加自定义标头(因为有时候一个脚本中不止一个HTTP请求)
- 4.web_add_header 向下一个HTTP 请求中添加自定义标头
- 5.web_cleanup_auto_headers 停止向后面的 HTTP 请求中添加自定义标头
- 6.web_remove_auto_header 停止向后面的 HTTP 请求中添加特定的标头
- 7.web_revert_auto_header函数等同于具有ImplicitGen选项设置为Yes的web_remove_auto_header函数。
_________________________________________________________
- 8.web_reg_save_param_regexp
自动正则关联函数。录制脚本后,点工具栏的 Design Studio可以自动生成。在生成该cookie的请求之前。
web_reg_save_param_regexp(
"ParamName=ssoticket",
"RegExp=ssoticket=(.*?);",
SEARCH_FILTERS,
"Scope=Cookies",
"IgnoreRedirections=No",
LAST);
后续引用
web_add_cookie("ssoticket={ssoticket_URL1}; DOMAIN=192.168.1.207");
——————————————————————————————————————————————
- 9. 文本查找 Web_reg_find放在请求的函数前
可以选到view->layout->Snapshot layout 可以直接查看每个请求的参数和返回,然后右键需要查找的文本,可以自动生成该函数。
"Text=操作成功",
LAST);
web_custom_request("version_2",
"URL=http://192.168.1.206:8091/coreframe/index/version",
"Method=POST",
"Resource=0",
"RecContentType=application/json",
"Referer=http://192.168.1.206:9529/",
"Snapshot=t18.inf",
"Mode=HTML",
"EncType=",
LAST);
lr_output_message("intA=%s",lr_eval_string("{intA}"));
lr_output_message("StrB=%s",lr_eval_string("{StrB}"));
- 11、文本检查点 web_reg_find ,图像检查点 web_image_check要勾选文本检查,文本不需要,且性能测试时候取消。
- 12.使用该函数注意以下事项:
- 13、验证是否找到了页面上的要检查的字符串 如 4 ,这个判断要放在函数 web_submit_data之后
- 14、所有带 reg 字样的函数,都是注册函数,所有注册函数都要放在实际请求函数之前。但是打印出信息时,要在请求之后
- 15、调试:Lr_output_message(“%s登录成功”,lr_eval_string(”{user}”)),输出打印信息。 和打断点
- 16、文本检验txt是中文的,录制的时候要勾选UTF-8.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix