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

  1. LoadRunner系列之—-02 基于webservice协议的接口测试(脚本实例)

    Loadrunner 基于webservice协议的接口压力测试(脚本实例) 接口功能如下:请求接口,报文只有一个参数为证件号码:返回报文中,有证件号码是否能查到对应数据,查到几条数据. 思路:请求w ...

  2. 性能测试总结工作总结-基于WebService协议脚本 内置函数手动编写

    LoadRunner基于WebService协议脚本 WebService协议脚本有三种生成方式,一种是直接通过LoadRunner导入URL自动解析生成:一种是使用LoadRunner内置函数手动编 ...

  3. python测试基于websocket协议的即时通讯接口

    随着html5的广泛应用,基于websocket协议的即时通讯有了越来越多的使用场景,本文使用python中的websocket-client模块来做相关的接口测试 import webclient ...

  4. Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试

    脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122   目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...

  5. LoadRunner系列之—-04 录制基于https协议的脚本

    实际性能测试过程中,有些需录制脚本的页面或接口是基于https协议的,按原来方法录制脚本,录完了脚本是空的.为解决这个问题,第一步了解https协议的具体实现,这块网上资料很多,可参考页面下方参考资料 ...

  6. 集成基于OAuth协议的单点登陆

    在之前的一篇文章中,我们已经介绍了如何为一个应用添加对CAS协议的支持,进而使得我们的应用可以与所有基于CAS协议的单点登陆服务通讯.但是现在的单点登陆服务实际上并不全是通过实现CAS协议来完成的.例 ...

  7. 集成基于CAS协议的单点登陆

    相信大家对单点登陆(SSO,Single Sign On)这个名词并不感到陌生吧?简单地说,单点登陆允许多个应用使用同一个登陆服务.一旦一个用户登陆了一个支持单点登陆的应用,那么在进入其它使用同一单点 ...

  8. 基于Z-WAVE 协议的LED智能照明系统的研究笔记

    LED调光基础: ☆:LED照明调光控制信号的方式有两种: 1. 通过PWM信号控制LED灯具开关电源的占空比从而实现调光: 2. 通过调光控制信号和交流电源供电线合用的两线式或三线式(例如LED相控 ...

  9. 基于UDP协议模拟的一个TCP协议传输系统

    TCP协议以可靠性出名,这其中包括三次握手建立连接,流控制和拥塞控制等技术.详细介绍如下: 1. TCP协议将需要发送的数据分割成数据块.数据块大小是通过MSS(maximum segment siz ...

随机推荐

  1. 条款八: 写operator new和operator delete时要遵循常规

    自己重写operator new时(条款10解释了为什么有时要重写它),很重要的一点是函数提供的行为要和系统缺省的operator new一致.实际做起来也就是:要有正确的返回值:可用内存不够时要调用 ...

  2. 启用Mac系统读写NFTS磁盘

    从Mac OSX 10.6系统开始苹果系统已经内置对NTFS写入功能,但苹果没有公开说明,而且在默认状态下是没有开启的.SL-NTFS是一款Mac上的小工具,它可以直接为你的Mac增加NTFS的写入权 ...

  3. gcc 5.2.0 编译安装笔记-20151110

    **转载请注明出处** by.haunying3 系统版本号 CentOS-6.6-x86_64-minimal 编译器 gcc-4.4.7通过yum安装 rpm -qa | grep gcc gcc ...

  4. Ganglia API安装与使用

    Ganglia监控本身没有提供API可供外部程序调用,只是依据ganglia监控的原理,能够通过分析gmetad的port的xml来直接获取metrics. Guardian已经在Github上公布了 ...

  5. Hibernate学习笔记(六) — Hibernate的二级缓存

    我们知道hibernate的一级缓存是将数据缓存到了session中从而降低与数据库的交互.那么二级缓存呢? 一.应用场合 比方.在12306购票时.须要选择出发地与目的地,假设每点一次都与数据库交互 ...

  6. restlet 2.3.5 org.restlet包导入eclipse出现的com.sun.net.httpserver类包找不到问题

    准备过一遍restlet 2.3.5 JavaEE的源码. 环境 eclipse3.7.2 和 jdk 7.0 将org.restlet 包增加到eclipse中.出现 com.sun.net.htt ...

  7. APICloud平台的融云2.0集成

    融云2.0的官方文档地址:http://docs.apicloud.com/端API/开放SDK/rongCloud2 项目须要IM模块,最后还是选择了融云.在iOS原生开发中,融云sdk集成了聊天界 ...

  8. Codeforces Round #313 B. Gerald is into Art(简单题)

    B. Gerald is into Art time limit per test 2 seconds memory limit per test 256 megabytes input standa ...

  9. initial ram filesystem

    1 制作最简单的initramfs 1.1 创建init #include <stdio.h> int main() { printf ("\n"); printf ( ...

  10. 获取发布的头条的url,避免点击打开新的页面

    https://www.toutiao.com/ document.getElementsByClassName("ugc-mode-content")[0].getElement ...