LoadRunner 函数之 web_custom_request
Allows you to create a custom HTTP request with any method supported by HTTP.

URL- 请求地址
Method – 请求方法 POST or GET.
EncType – 编码类型,指定Content-Type,如"text/html","application/json"等,会重写 web_add_[auto_]header中定义的Content-Type。
RecContentType – 响应头编码类型(Content–Type) e.g., text/html, application/x–javascript.
Body – 请求体,不同的应用中,请求体分别通过Body、BodyBinary或者BodyUnicode参数来传递
Resource – 指示URL是否属于资源。1 是;0 不是。设置了这个参数后,RecContentType参数被忽略。
"Resource=1":意味着当前操作与所在脚本的成功与否关系不大。在下载资源时如果发生错误,是当作警告而不是错误来处理的;URL是否被下载受“Run-Time Setting—Browser Emulation--Download non-HTML resources” 这个选项的影响。此操作的响应信息是不做为HTML来解析的。
"Resource=0" :表明此URL是重要的,不受发送请求(RTS)的影响,在需要时也会解析它。
Mode – 录制级别: HTML or HTTP.
UserAgent – 用户代理,它是一个HTTP头的名字,用来标识应用程序,通常是浏览器,它呈现的是用户和服务器的交互。
简单示例:
Action()
{
//GET 请求
web_custom_request("get_login",
"URL=http://10.1.102.75:8000/login?user=Milton&pwd=Loveyp",
"Method=GET",
"Resource=0",
"Mode=HTML",
"RecContentType=application/json",
LAST ); //POST 请求提交form数据
web_custom_request("post_form_login",
"URL=http://10.1.102.75:8000/login",
"Method=POST",
"Resource=0",
"Mode=HTML",
"Body=user=Milton&pwd=Loveyp",
LAST );
//POST 请求提交json数据
web_custom_request("post_json_login",
"URL=http://10.1.102.75:8000/json_login",
"Method=POST",
"Resource=0",
"Mode=HTML",
"EncType=application/json",
"Body={\"user\":\"Milton\",\"pwd\":\"Loveyp\"}",
LAST ); return 0;
}
运行后,通过View-》Test Results检查请求结果

为了测试方便,这里附上服务端接口代码,如下:
@csrf_exempt
def login(request):
if request.method == "POST":
user = request.POST.get("user")
pwd = request.POST.get("pwd")
else:
user = request.GET.get("user")
pwd = request.GET.get("pwd")
if user == "Milton" and pwd == "Loveyp":
msg = {
"code": 1000,
"msg": "login success! Welcome~~",
}
else:
msg = {
"code": -1,
"msg": "username or password error,please try again!",
}
response = JsonResponse(msg)
return response @csrf_exempt
def json_login(request):
user=""
pwd=""
if request.method == "POST":
print request.body
recive=json.loads(request.body)
print recive
print type(recive)
user=recive.get("user")
pwd=recive.get("pwd") if user == "Milton" and pwd == "Loveyp":
msg = {
"code": 1000,
"msg": "login success! Welcome~~",
}
else:
msg = {
"code": -1,
"msg": "username or password error,please try again!",
}
response = JsonResponse(msg)
return response
***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!***
LoadRunner 函数之 web_custom_request的更多相关文章
- LoadRunner 函数大全之中文解释
LoadRunner 函数大全之中文解释 // sapgui_table_set_column_selected 模拟用户 // 单击表中的列标题. int sapgui_table_set_colu ...
- LoadRunner函数百科叒叒叒更新了!
首先要沉痛通知每周四固定栏目[学霸君]由于小编外派公干,本周暂停. 那么这周就由云层君来顶替了,当然要要说下自己做的内容啦,DuangDuang! <LoadRunner函数百科>更新通知 ...
- myeclipse调用loadrunner函数开发测试脚本
myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...
- LoadRunner函数大全之中文解释
LoadRunner函数大全之中文解释
- 软件测试中LoadRunner函数中的几个陷阱
软件测试 中 LoadRunner 函数中的几个陷阱 1.atof 在 loadrunner 中如果直接用 float f; f=atof("123.00"); lr _outpu ...
- LoadRunner函数的介绍
LoadRunner函数的介绍 LoadRunner函数 一:通用函数 LoadRunner的通用函数以lr为前缀,可以在任何协议中使用.可以如下分类: 信息相关的函数: lr_error_messa ...
- loadrunner 脚本开发-web_custom_request函数详细介绍
脚本开发-web_custom_request函数详细介绍 by:授客 QQ:1033553122 c语言版本: int web_custom_request(const char *RequestN ...
- LoadRunner函数示例:lr_paramarr_random()
lr_paramarr_random()函数的作用为:从一个参数数组中随机抽取一个值并以字符串形式返回.其使用方式及返回方式如下: char * lr_paramarr_random( const c ...
- LoadRunner函数
一.基础函数简介 在VU左边导航栏中,有三个LoadRunner框架函数,分别是vuser_init().Action().vuser_end().这三个函数存在于任何Vuser类型的脚本中. vus ...
随机推荐
- SVN 提交失败: permission denied - txn-current-lock
执行以下命令即可 sudo chown -R www-data:subversion myproject sudo chmod -R g+rws myproject
- Whatbeg's blog 文章列表
whatbeg.com 文章列表 ----------------------------------------------------------------------------------- ...
- 参数命令化 防止Sql注入
1.先在数据库中完成储存过程 create proc usp_selectStudent ) as select * froom student where StudentName=@studentN ...
- Linux权限管理.md
Linux 文件的权限 Linux文件权限简介 Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下: # ...
- github使用技巧
转自:一秒钟把Github项目变成前端网站 后面加了一些自己的东西 一秒钟把Github项目变成前端网站 GitHub Pages大家可能都知道,常用的做法,是建立一个gh-pages的分支,通过se ...
- 从数据库导出到excel
在项目 扬中 News shenbaocreateall //选中的id string cc = Request["IDcheck"]; Response.C ...
- oracle如何清空一个用户下的所有表中的数据?
-- 大概 这个样子,如果没有 FK 的话,一下子就都删掉了. begin for x in (select table_name from user_tables) loop execute imm ...
- Nginx负载均衡实践之一:基本实现
由于现在的网站架构越来越大,基于互联网的用户也是日渐增长,所以传统的单机版服务器已经渐渐不能适应时代发展的需要.最近在和其他企业接触的过程中,发现对于互联网的经验尤为看重,所谓的互联网经验,其实就是指 ...
- 2016-2017-2 《Java程序设计》课程学生博客和代码托管链接
2016-2017-2 <Java程序设计>课程学生博客和代码托管链接 博客 1552 20155201 李卓雯 20155202 张 旭 20155203 杜可欣 20155204 王 ...
- 设计模式——抽象工厂(Abstract Factory)
Abstract Factory 抽象工厂模式(创建型模式): new的问题:实现依赖,不能应变应对“具体实例化类型”的变化. 解决思路:--封装变化点:哪里变化,封装哪里 - - ...