Action()
{

    int nHttpRetCode;  

    lr_rendezvous("read");

lr_start_transaction("go    /*web_reg_find("Fail=NotFound",

        "Text=4001",
        LAST);*/

    //提取返回结果
    web_reg_save_param("status",
        "LB=\"status\":\"",
        "RB=\",",
        "Ord=1",
        "NotFound=ERROR",
        "Search=NoResource",
        LAST);

    // 默认最大长度为256,get请求需注意缓存问题,需要根据content-length进行修改
    web_set_max_html_param_len("262144");
    //自定义截取字符串,根据左右字符串获取数据,设置查找范围为消息体、左右查找边界为空则可以获取整个响应体的内容
    web_reg_save_param("ResponseBody", "LB=", "RB=", "Search=Body", LAST);
    // REQUEST为内置变量,保存请求的头信息,需在发送URL请求前注册使用,将请求头信息存入字符串RequestHeader中
    web_save_header(REQUEST, "RequestHeader");
    // 将RESPONSE保存响应的头信息在字符串ResponseHeader中
    web_save_header(RESPONSE, "ResponseHeader");

    //增加header
    web_add_header("Authorization","Basic MDMxMDAwMDM6YmViZTMwM2M1YmQ1MGFkYmY4OGFiMzFlMjVhMGQ0NTg=");
    //get请求
    web_url("test",
        "URL=http://wos-hrs.wondershare.cn/v1/evaluate/list?log_id=1&detail_id=1",
        "RecContentType=text/html",
        "Mode=HTML",
        LAST);

    //post请求
    /*web_custom_request("test",
                       "Method=POST",
                       "URL=http://wos-hrs.wondershare.cn/v1/log/comment",
                       "Body=log_id=1&detail_id=1&comment=1",
                       LAST );*/

    //字符转码
    lr_convert_string_encoding(lr_eval_string("{RequestHeader}"),LR_ENC_UTF8 ,LR_ENC_SYSTEM_LOCALE,"RequestHeaderUTF8");
    lr_convert_string_encoding(lr_eval_string("{ResponseHeader}"),LR_ENC_UTF8 ,LR_ENC_SYSTEM_LOCALE,"ResponseHeaderUTF8");
    lr_convert_string_encoding(lr_eval_string("{ResponseBody}"),LR_ENC_UTF8 ,LR_ENC_SYSTEM_LOCALE,"ResponseBodyUTF8");
    //输出信息 lr_eval_string()将参数值转换成字符串
    lr_output_message("# 请求头信息:\n %s", lr_eval_string("{RequestHeaderUTF8}"));
    lr_output_message("# 响应头信息:\n %s", lr_eval_string("{ResponseHeaderUTF8}"));
    lr_output_message("# 响应内容体:\n %s", lr_eval_string("{ResponseBodyUTF8}"));
    //获取服务器http响应码,HTTP_INFO_RETURN_CODE变量在请求后使用
    nHttpRetCode = web_get_int_property(HTTP_INFO_RETURN_CODE);
    if(nHttpRetCode == 200){
      lr_output_message("Success!");
    }else{
      lr_output_message("Failed! ");
    }

    //判断返回结果
    lr_output_message("# 提取返回结果如下:\n %s",lr_eval_string("{status}"));    if (strcmp(lr_eval_string("{status}"),"200")==0)        lr_end_transaction("go",LR_PASS);    else        lr_end_transaction("go",LR_FAIL);    lr_end_transaction("go", LR_AUTO);
return 0;
}

Loadrunner Web (HTTP/HTML) 接口测试的更多相关文章

  1. 老李分享:loadrunner用javavuser进行接口测试

    老李分享:loadrunner用javavuser进行接口测试 在这里分享一个poptest培训过程中案例,在日常工作中会遇到被测试系统通讯都是通过加密的数据包,加密算法是公司自己开发的,并且发送的数 ...

  2. web自动化测试中接口测试学习笔记

    一.web基础 web是实现:客户端浏览器端<—————>服务端  交互的应用: web通常包含两部分:web客户端.web服务端:web客户端技术包含html.javascript.aj ...

  3. 如何利用cURL和python对服务端和web端进行接口测试

    工具描述 cURL是利用URL语法在命令行方式下工作的文件传输工具,是开源爱好者编写维护的免费工具,支持包括Windows.Linux.Mac等数十个操作系统,最新版本为7.27.0,但是我推荐大家使 ...

  4. loadrunner用javavuser进行接口测试

    在日常工作中会遇到被测试系统通讯都是通过加密的数据包,加密算法是公司自己开发的,并且发送的数据包还要经过系统的压缩,以保证系统的性能.利用loadrunner就无法解决这里的加密的技术问题,利用jav ...

  5. LoadRunner web请求和响应中文乱码解决办法

    先来认识下lr_convert_string_encoding: int lr_convert_string_encoding( const char *sourceString, const cha ...

  6. 用LoadRunner实现接口测试

    接口测试的两种方法 其实无论用那种测试方法,接口测试的原理是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一个过 ...

  7. Loadrunner 接口测试的两种方法

    其实无论用那种测试方法,接口测试的原理是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一个过程. 方法一.用Lo ...

  8. Loadrunner之HTTP接口测试

    Loadrunner之HTTP接口测试 接口测试的原理是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一个过程. ...

  9. LR进行接口测试

    其实无论用那种测试方法,接口测试的原理是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一个过程. 方法一.用Lo ...

随机推荐

  1. 主线程中的Looper.loop()一直无限循环为什么不会造成ANR

    待归纳 https://www.jianshu.com/p/cfe50b8b0a41 https://blog.csdn.net/cjh94520/article/details/71022883 那 ...

  2. 用OZ工具制作openstack镜像

    在部署openstack云平台环境的时候,需要上传镜像到glance. 首先下载iso镜像,这里下载了centos7.2镜像,放到/iso目录下 然后用OZ工具制作openstack的镜像 1.安装l ...

  3. nginx 端口映射多个应用

    nginx端口映射多个应用,应用中的静态资源路径尽量是写相对路径 server { listen 8000; location / { proxy_pass http://10.1.166.216:9 ...

  4. 获取AWR报告

    1.进入sqlplus [oracle@localhost admin]$ sqlplus / as sysdba SQL Production :: Copyright (c) , , Oracle ...

  5. [转] 深入理解Batch Normalization批标准化

    转自:https://www.cnblogs.com/guoyaohua/p/8724433.html 郭耀华's Blog 欲穷千里目,更上一层楼项目主页:https://github.com/gu ...

  6. python下载夏目友人帳

    python下载夏目友人帐 一般情况下我们使用爬虫更多的应该是爬数据或者图片吧,今天在这里和大家分享一下关于使用爬虫技术来进行视频下载的方法,不仅可以方便的下载一些体积小的视频,针对大容量的视频下载同 ...

  7. windows下django1.7 +python3.4.2搭建记录1

    python+django在linux下搭建比较简单,windows下搭建比较复杂,所以列在下方一.下载安装下载django的包,到刚解压后的Django-1.7目录下执行命令 python setu ...

  8. 题解-CodeForces835F Roads in the Kingdom

    Problem CodeForces-835F 题意:求基环树删去环上任意一边后直径最小值,直径定义为所有点对最近距离的最大值 Solution 首先明确删去环上一点是不会影响树内直径的,所以应当先把 ...

  9. hue的历史查询记录querys乱码问题解决

    hue的历史查询记录querys乱码问题解决: master1中配置文件/home/hadoop/.versions/hue-3.10.0/desktop/conf/hue.ini 可以看到连接的是m ...

  10. Ubuntu解除"输入密码以解锁密钥环”

    解决办法有两种: 1.去掉默认密钥环的密码: 打开应用程序->附件->密码和加密密钥(如果你的没有,在终端中输入 seahorse),切换到密码选项卡,会看到一个密码密钥环(我的密钥环是 ...