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 ...
随机推荐
- 关于Thinkcmf中热门文章的使用
今天在做一个首页新闻列表页面的功能时候,因为要读取大量的新闻内容列表.如果每条数据都要从数据按照文章id和term_id来对应取值,无疑是很痛苦的. 然而机智如我,发现cmf框架中热门文章的用法: 在 ...
- 使用Jackson解析Json示例
原文http://blog.csdn.net/gebitan505/article/details/17005735 custom.json: { "country":&q ...
- Java中的序列化Serialable高级详解
来自[http://blog.csdn.net/jiangwei0910410003/article/details/18989711] 引言 将 Java 对象序列化为二进制文件的 Java 序列化 ...
- Tomcat关闭日志catalina.out
catalina.out文件会越来越大,对系统的稳定造成了一定的影响.conf/logging.properties 一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统 ...
- nginx 日志相关配置总结
设置位于nginx.conf: log_format main '$server_name $remote_addr - $remote_user [$time_local] &q ...
- EF with (LocalDb)V11.0
EF虽说对LocalDb支持的不错,但LocalDb有自身的缺陷(不想sqlite那样数据库文件可以像普通文件一样使用). LocalDb在一个计算机上会对数据库有唯一性约束,要求本机的localdb ...
- c++中this指针的用法
1. this指针的用处: 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果.this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将 ...
- POJ1273Drainage Ditches[最大流]
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 71559 Accepted: 2784 ...
- [NOIP2014]自测
这两天做完了2014年的noip提高. 因为以前看了SDSC2016时gty的课件,题目思路都知道了一点,做起来没多大困难. 100+100+75+100+100+70=545 里面水分好多,好多题都 ...
- [转载]我的Java后端书架 (2016年暖冬4.0版)
[转载]我的Java后端书架 (2016年暖冬4.0版) ps:最近正在初学Java,有一些其他语言的底子,但是还是要好好看书,好好练习,网上找了好久,都没有这份书单来的实用,特意转载过来,方便以 ...