LR接口测试---基于http协议之get/post
get请求代码:
//=====================get interface========================
以http状态码方式:
//获取返回的HTTP状态码判断请求是否成功
int HttpRetCode; web_url("请求百度首页", "URL=http://app.zhongniang.com/first.htm?json", "TargetFrame=_TOP", LAST ); HttpRetCode = web_get_int_property(HTTP_INFO_RETURN_CODE); if (HttpRetCode == ){
lr_log_message("=====================The script successfully======================="); }else{ lr_log_message("=====================The script failed===================="); }
以检查点的方式:
//检查点函数
web_reg_find("Search=All",
"SaveCount=wenben",
"Text=result\":",
LAST); //事务开始
lr_start_transaction("get");
//get请求
web_url("GetMethod_getSkuInfo.action",
"URL=http://127.0.0.1:8080/PerfTeach/GetMethod_getSkuInfo.action?skuid={number}&opt=lee",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST);
//事务判断
if( atoi(lr_eval_string("{wenben}"))>0 ){ //提取出检查点转换成整形,如果大于0即为存在事务成功,否则失败 lr_end_transaction("get", LR_PASS); }else { lr_end_transaction("get", LR_FAIL); }
以关联的方式:
web_reg_save_param("wenben", //关联函数
"LB=result\":",
"RB=}",
"Ord=all",
LAST);
//事务开始
lr_start_transaction("get");
//get请求
web_url("GetMethod_getSkuInfo.action",
"URL=http://127.0.0.1:8080/PerfTeach/GetMethod_getSkuInfo.action?skuid={number}&opt=lee",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST);
//事务判断
if(strcmp(lr_eval_string("{wenben}"),"true") ){ //提取出关联的内容与“true”相比较
lr_end_transaction("get", LR_PASS);
}else {
lr_end_transaction("get", LR_FAIL);
}
*/
//======================================================
post请求代码:
Action()
{
//关联
web_reg_save_param("resultq",
"LB=msg\":\"",
"RB=\"",
"Ord=1",
LAST); //事务开始
lr_start_transaction("post"); //自定义请求。这个函数web_custom_request可以自定义任何类型的请求
web_custom_request("post", "Method=POST", "URL=http://127.0.0.1:8080/PerfTeach/PostMethod_reg.action", "Body=data={\"username\":\"jack\",\"password\":\"123\",\"email\":\"ljt@qq.com\",\"phone\":110}",//post body需要 逗号 分割 "TargetFrame=", LAST );
//转码前打印
lr_output_message("==========转码前===========%s",lr_eval_string("{resultq}")); //转码及打印结果
lr_convert_string_encoding(lr_eval_string("{resultq}"),LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"aftermsg");//从什么编码要转为什么编码,前为原来的编码,后为要转化成为什么编码
lr_output_message("==========转码后===========%s",lr_eval_string("{aftermsg}")); //把转码后的结果赋值给 zuihoujieguo
lr_save_string(lr_eval_string("{aftermsg}"),"zuihoujieguo"); //lr_output_message("==========%s",lr_eval_string("{zuihoujieguo}")); //字符串比较
//lr_output_message("%d",strcmp(lr_eval_string("{zuihoujieguo}"),"注册成功1"));
if (strcmp(lr_eval_string("{zuihoujieguo}"),"注册成功") == ) //strcmp=0即为两数相同
{ lr_end_transaction("post", LR_PASS);
}else{ lr_end_transaction("post", LR_FAIL); } return ;
}
LR接口测试---基于http协议之get/post的更多相关文章
- LoadRunner系列之—-02 基于webservice协议的接口测试(脚本实例)
Loadrunner 基于webservice协议的接口压力测试(脚本实例) 接口功能如下:请求接口,报文只有一个参数为证件号码:返回报文中,有证件号码是否能查到对应数据,查到几条数据. 思路:请求w ...
- 性能测试总结工作总结-基于WebService协议脚本 内置函数手动编写
LoadRunner基于WebService协议脚本 WebService协议脚本有三种生成方式,一种是直接通过LoadRunner导入URL自动解析生成:一种是使用LoadRunner内置函数手动编 ...
- python测试基于websocket协议的即时通讯接口
随着html5的广泛应用,基于websocket协议的即时通讯有了越来越多的使用场景,本文使用python中的websocket-client模块来做相关的接口测试 import webclient ...
- Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试
脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122 目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...
- LoadRunner系列之—-04 录制基于https协议的脚本
实际性能测试过程中,有些需录制脚本的页面或接口是基于https协议的,按原来方法录制脚本,录完了脚本是空的.为解决这个问题,第一步了解https协议的具体实现,这块网上资料很多,可参考页面下方参考资料 ...
- 集成基于OAuth协议的单点登陆
在之前的一篇文章中,我们已经介绍了如何为一个应用添加对CAS协议的支持,进而使得我们的应用可以与所有基于CAS协议的单点登陆服务通讯.但是现在的单点登陆服务实际上并不全是通过实现CAS协议来完成的.例 ...
- 集成基于CAS协议的单点登陆
相信大家对单点登陆(SSO,Single Sign On)这个名词并不感到陌生吧?简单地说,单点登陆允许多个应用使用同一个登陆服务.一旦一个用户登陆了一个支持单点登陆的应用,那么在进入其它使用同一单点 ...
- 基于Z-WAVE 协议的LED智能照明系统的研究笔记
LED调光基础: ☆:LED照明调光控制信号的方式有两种: 1. 通过PWM信号控制LED灯具开关电源的占空比从而实现调光: 2. 通过调光控制信号和交流电源供电线合用的两线式或三线式(例如LED相控 ...
- 基于UDP协议模拟的一个TCP协议传输系统
TCP协议以可靠性出名,这其中包括三次握手建立连接,流控制和拥塞控制等技术.详细介绍如下: 1. TCP协议将需要发送的数据分割成数据块.数据块大小是通过MSS(maximum segment siz ...
随机推荐
- centos7容量扩充
新买的2T 绿盘到货了~~好开心的说~但毕竟是第一次安装,事先还是在网上搜索了很多资料才敢动手,下面就开始啦~ 环境:Centos7.dell服务器.2T容量绿盘 1.硬盘连接好之后,开机先使用fdi ...
- sharepoint 訪问缩略图
Sharepoint缩略图 简单介绍 Sharepoint2010中有专门的图片库,当你新建图片库后,向图片上传一部分图片.当你浏览这个库时显示一排排小图片.当点击一个图片时进入显示的是大图.不要简单 ...
- MYSQL入库常用PHP函数
addslashes addslashes() 函数在指定的预定义字符前添加反斜杠.这些字符是单引号(').双引号(").反斜线(\)与NUL(NULL字符). stripslash ...
- 网站访问分析对SEO的好处
统计剖析,应该说是每个SEO都必需要擅长的技艺.至于网站统计的剖析,根据自己的一些经验,与大家分享一下相关技巧.(发表于 2012-3-24 23:12) 申请一个统计帐号很容易,现在有很多的统计服务 ...
- 64位win2008下IIS未开启32位支持导致DLL无法加载问题
部署一个WEB项目,在本机.本地服务器都没有问题,但部署到远程服务器以后,提示有个DLL无法加载: Server Error in '/' Application. Could not load fi ...
- HDU 3308 线段树单点更新+区间查找最长连续子序列
LCIS Time Limit: 6000/2000 MS (Java/Oth ...
- python包格式
1 egg和wheel 前者扩展名是.egg,后者扩展名是.whl 它们都是python的模块.后者用来替换前者. wheel是轮子的意思,就是说,有了.whl包就不需要重新再造轮子了.
- lucene .doc里存储的skiplist跳表
http://forfuture1978.iteye.com/blog/546841 见图: lucene-6.5.1-src/lucene-6.5.1$ grep "skiplistwri ...
- go语言---传值和传引用
go语言---传值和传引用 https://blog.csdn.net/cyk2396/article/details/78893828 1.定义: b = a; b.modify(); 如果b的修改 ...
- 【SCOI 2007】 降雨量
[题目链接] 点击打开链接 [算法] 线段树 此题细节很多,写程序时要细心! [代码] #include<bits/stdc++.h> using namespace std; #defi ...