Loadrunner几种主要请求的概念和例子

本文介绍如何使用LoadRunner进行图片与数据请求测试,包括通过web_url()函数获取图片,使用web_custom_request()函数以JSON格式提交终端信息,以及web_submit_data()和web_submit_form()函数实现登录功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

业务:根据url获取图片
用web_url()函数访问数据;
请求方式:HTTP GET 请求;
Action()
{
web_url("imageproxytest", 
"URL=http://ip:port/imageproxytest?source=http://s1.mimg.ifeng.com/upload/day_130319/201303191807211748.jpg&quality=30&s=1", 
"Resource=1",     //设置为0,未取到图片,报error;设置为1,未取到图片,报warn
"RecContentType=image/jpeg", 
"Referer=", 
"Snapshot=t1.inf", 
LAST);

return 0;
}


业务:将终端信息提交到服务端进行保存;
用web_custom_request()函数提交数据:
HTTP POST 请求,请求参数为json格式;
Action()
{
    //web_add_header("mobile","13505718899");   //当请求头中需带特殊参数时,用该函数加上。
    //或 web_add_auto_header("Content-Type","application/json");

web_custom_request("web_custom_request",
   "URL=http://ip:port/statisticstest",
"Method=POST",
        "Resource=0",
        "RecContentType=application/json",
        "Referer=",
        "Mode=HTTP",
        "EncType=application/json",
"Body={\"tag\":\"testbrowser\",\"optype\":\"webstatistics\",\"terminalInfo\":\"{terminfo}\",\"recordList\":[{\"eventType\":1002,\"eventTime\":0,\"sourceData\":\"abc%25B0%25D9%25B6%25C8%25CB%25E6%25C9%25F9%25CC%25FD\",\"sourceType\":0,\"sourceCount\":0}],\"recordCount\":\"1\"}",
LAST);


//判断页面返回正确与否
//if(web_get_int_property(HTTP_INFO_RETURN_CODE)==200) 
//lr_output_message("OK!!");
//else
//lr_error_message("Fail!!");


return 0;
}


业务:使用用户名和密码进行登录
用web_submit_data()函数提交表单数据:
HTTP POST 请求,最常见的参数形式;
Action()
{
web_submit_data("login",
"Action=http://ip:port/login",
"Method=POST",
"TargetFrame=",
"RecContentType=text/html",
"Mode=HTML",
ITEMDATA, 
"Name=username", "Value=root", ENDITEM, 
"Name=password", "Value=2012", ENDITEM, 
"Name=remember", "Value=<OFF>", ENDITEM, 
     LAST);
return 0;
}


业务:使用用户名和密码进行登录(使用录制的方式,脚本一般如下)
用web_submit_form函数提交表单数据:
HTTP POST 请求,最常见的参数形式;
Action()
{
web_url("login", 
"URL=http://172.16.4.23:9000/login", 
"Resource=0", 
"RecContentType=text/html", 
"Referer=", 
"Snapshot=t1.inf", 
"Mode=HTML", 
LAST);


web_submit_form("authenticate", 
"Snapshot=t2.inf", 
ITEMDATA, 
"Name=username", "Value=root", ENDITEM, 
"Name=password", "Value=2012", ENDITEM, 
"Name=remember", "Value=<OFF>", ENDITEM, 
LAST);


return 0;
}
 

### LoadRunner 中的脚本参数化方法 LoadRunner 提供了多种参数化的方式,以便测试人员能够模拟真实场景下的用户行为。以下是关于如何在 LoadRunner 中进行脚本参数化的详细介绍。 #### 1. **参数化的基本概念** 参数化是指通过动态替换固定值为变量的方法,使脚本更加灵活并能适应不同输入条件的过程。这有助于减少重复记录操作的需求,并提高性能测试的真实性覆盖率[^1]。 #### 2. **常见的参数化类型** LoadRunner 支持以下几种主要的参数化类型: - **内部参数** 使用内置函数 `lr_parametrize` 或者 GUI 工具中的选项来定义参数。这些参数可以来源于 CSV 文件或其他外部资源[^4]。 - **外部文件** 将参数存储在一个单独的 CSV 文件中,每列代表一个参数集合。例如,在登录功能中,用户名密码可以从同一个 CSV 文件的不同列读取[^5]。 - **数据库查询** 如果应用程序依赖于后台数据库,则可以直接连接到该数据库并通过 SQL 查询提取所需的数据作为参数[^3]。 #### 3. **具体实施步骤** ##### (1) **创建参数** 打开 VuGen 编辑器后,定位需要被参数化的字段(如用户名、密码)。右键单击目标位置,选择 “Replace with Parameter”,然后按照提示完成配置过程。 ##### (2) **设置参数属性** 对于每一个新建的参数,都需要指定其获取数据的方式以及加载顺序等细节。比如可以选择按顺序访问还是随机抽取等方式。 ```c // 示例代码展示如何调用已定义好的参数 web_submit_data("Login", "Action=login.php", "Method=POST", ITEMDATA, "Name=username", "Value={username}", ENDITEM, // 这里 {username} 是之前设定的一个参数名 "Name=password", "Value={password}", ENDITEM, // 同理,{password} LAST); ``` 上述例子展示了如何利用 `{}` 符号嵌入预先声明过的两个独立参数——分别对应用户的名称他的秘密码[^2]。 ##### (3) **调整迭代逻辑** 为了满足多轮运行的要求,可以在 Run-Time Settings 的 Runtime Logic 部分修改相应的设置项。例如让单一虚拟用户执行多次循环或者改变每次请求间的时间间隔等等。 #### 4. **特殊注意事项** 当涉及到某些特定业务流程时,可能还需要额外考虑一些特殊情况处理机制。比如说为了避免预订过程中可能出现的冲突情况,应该确保出发地点与目的地不会完全一致。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值