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 ...
随机推荐
- .NET笔记(二)
null合并运算符 ?? 运算符称作null 合并运算符.如果此运算符的左操作数不为null,则此运算符将返回左操作数:否则返回右操作数. 使用Average而产生的一个错误 因为数据中有DBNull ...
- Python写地铁的到站的原理简易版
Python地铁的到站流程及原理(个人理解) 今天坐地铁看着站牌就莫名的想如果用Python写其工作原理 是不是很简单就小试牛刀了下大佬们勿喷纯属小弟个人理解 首先来看看地铁上显示的站牌如下: 就想这 ...
- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。问题
JSP页面顶端出现“红色”的报错信息:The superclass "javax.servlet.http.HttpServlet" was not found on the Ja ...
- Maven 的classifier的作用
直接看一个例子,maven中要引入json包,于是使用了 <dependency> <groupId>net.sf.json-lib</groupId> <a ...
- 理解Docker(1):Docker 安装和基础用法
本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...
- 爬虫(Java实现)
说明: 使用了htmlparser库. 运行过程: 从某个网址开始,摘取网页中的链接,并通过广度搜索,对这些链接递归执行上述操作. 在以上过程中把网址存入数据库中.以防止搜索中出现环路. 但是,程序经 ...
- java中的大数BigInteger
compareTo比较大小 equals比较是否相等 ,不能用== while(cin.hasNext())//等价于!=EOF n=cin.nextBigInteger();//读入一个大整数 Sy ...
- Win10 VC++6 无法启动此程序,因为计算机中丢失mfc42d.dll 需要提升
亲测可用 1.无法启动此程序,因为计算机中丢失mfc42d.dll 我也遇到了这个问题,并且顺利解决了!按一下流程搞定的: “工程-设置-常规-microsoft基础类,(选择使用MFC作为静态链接库 ...
- 【转】NuGet.org 无法访问的解决方法
打开Nuget,发现又出问题了:未能解析此远程名称:’nuget.org’. 在浏览器中输入 http://nuget.org 会发现是无法打开的. 在cmd命令行里输入: nslookup nuge ...
- 生成 PDF 全攻略【2】在已有PDF上添加内容
项目在变,需求在变,不变的永远是敲击键盘的程序员..... PDF 生成后,有时候需要在PDF上面添加一些其他的内容,比如文字,图片.... 经历几次失败的尝试,终于获取到了正确的代码书写方式. 在此 ...