Allows you to create a custom HTTP request with any method supported by HTTP.

List of Attributes

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的更多相关文章

  1. LoadRunner 函数大全之中文解释

    LoadRunner 函数大全之中文解释 // sapgui_table_set_column_selected 模拟用户 // 单击表中的列标题. int sapgui_table_set_colu ...

  2. LoadRunner函数百科叒叒叒更新了!

    首先要沉痛通知每周四固定栏目[学霸君]由于小编外派公干,本周暂停. 那么这周就由云层君来顶替了,当然要要说下自己做的内容啦,DuangDuang! <LoadRunner函数百科>更新通知 ...

  3. myeclipse调用loadrunner函数开发测试脚本

    myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...

  4. LoadRunner函数大全之中文解释

    LoadRunner函数大全之中文解释

  5. 软件测试中LoadRunner函数中的几个陷阱

    软件测试 中 LoadRunner 函数中的几个陷阱 1.atof 在 loadrunner 中如果直接用 float f; f=atof("123.00"); lr _outpu ...

  6. LoadRunner函数的介绍

    LoadRunner函数的介绍 LoadRunner函数 一:通用函数 LoadRunner的通用函数以lr为前缀,可以在任何协议中使用.可以如下分类: 信息相关的函数: lr_error_messa ...

  7. loadrunner 脚本开发-web_custom_request函数详细介绍

    脚本开发-web_custom_request函数详细介绍 by:授客 QQ:1033553122 c语言版本: int web_custom_request(const char *RequestN ...

  8. LoadRunner函数示例:lr_paramarr_random()

    lr_paramarr_random()函数的作用为:从一个参数数组中随机抽取一个值并以字符串形式返回.其使用方式及返回方式如下: char * lr_paramarr_random( const c ...

  9. LoadRunner函数

    一.基础函数简介 在VU左边导航栏中,有三个LoadRunner框架函数,分别是vuser_init().Action().vuser_end().这三个函数存在于任何Vuser类型的脚本中. vus ...

随机推荐

  1. sql server: sql script

    select ProductGUID,ProductName,ProjectGUID from dbo.Product /* F637A079-E22B-4E50-87E9-000147B1B1F4 ...

  2. 读《高性能javascript》笔记(一)

    第一章加载与执行:1,js脚本会阻塞页面渲染,<script>尽可能放到<body>标签的底部2, 合并脚本,页面中的<script>标签越少:HTTP请求带来的额 ...

  3. Python class and function json

    # coding=utf-8 __author__ = 'student' ''' how to define a class how to extend a class how to make a ...

  4. 完美者的代言-ArrayList线程安全问题

    [b]保证线程安全的三种方法:[/b]不要跨线程访问共享变量使共享变量是final类型的将共享变量的操作加上同步一开始就将类设计成线程安全的, 比在后期重新修复它,更容易.编写多线程程序, 首先保证它 ...

  5. Unity新功能|全息模拟器

    http://forum.china.unity3d.com/thread-21539-1-1.html

  6. SQL获取本周、本月、本季度的记录的语句

    前提条件:假设表名为:tableName:时间字段名为:theDate ①查询本周的记录 select * from tableName where DATEPART(wk, theDate) = D ...

  7. __definedGetter\Setter__的一些想法

    __definedGetter\Setter__ 是JS5在创建对象后内置的方法,用于在读写对象属性的时候执行的方法. zhangmingzhi.__defineSetter__('age',func ...

  8. C#多维数组与嵌套数组

    using System; namespace abc.e.f//等价于下面分层嵌套的写法.且这种写法不管命名空间abc有没有定义过,也不管命名空间e有没有定义过 { class MYTestX { ...

  9. mysql集群数据一致性校验

    目前,mysql在互联网行业使用地如火如荼,很多大型网站都在使用MySQL数据库,通过搭建mysql主备集群,实现高性能,高可用的存储方案.mysql集群的共同特性是通过复制来实现主备间的同步,保证主 ...

  10. 微信开发 企业号(二)-- 回调模式之Tooken验证 .net/python

    在企业号开发者中心中,有加密解密源代码,供给开发者使用.(加解密库下载) 由于官方只提供了python2.*的类库,使用python3.*的朋友可以再最后下载我修改后的py文件(仅修改验证Tooken ...