zoukankan      html  css  js  c++  java
  • Fiddler保存http请求 常用sprirct

    把自己需要的请求保存下来,再用接口测试框架调用,并验证返回结果。

    可以做请求录制,自动断言

    保存Request

    把下面代码贴在OnBeforeRequest()方法末尾

    //过滤无关请求,只关注特定请求

    if (oSession.fullUrl.Contains("meizu.com"))
    {
    var fso;
    var file;
    fso = new ActiveXObject("Scripting.FileSystemObject");
    //文件保存路径,可自定义
    file = fso.OpenTextFile("D:\Fiddler Sessions\Sessions.txt",8 ,true, true);
    file.writeLine("Request url: " + oSession.url);
    file.writeLine("Request header:" + "
    " + oSession.oRequest.headers);
    file.writeLine("Request body: " + oSession.GetRequestBodyAsString());
    file.writeLine("
    ");
    file.close();
    }

    保存Response

    把下面代码贴在OnBeforeResponse()方法末尾

    //过滤无关请求,只关注特定请求

    if (oSession.fullUrl.Contains("meizu.com"))
    {
    oSession.utilDecodeResponse();//消除保存的请求可能存在乱码的情况
    var fso;
    var file;
    fso = new ActiveXObject("Scripting.FileSystemObject");
    //文件保存路径,可自定义
    file = fso.OpenTextFile("D:\Fiddler Sessions\Sessions.txt",8 ,true, true);
    file.writeLine("Response code: " + oSession.responseCode);
    file.writeLine("Response body: " + oSession.GetResponseBodyAsString());
    file.writeLine("
    ");
    file.close();
    }

    2.常用设置

    1.断点,修改request

    2.模拟response

    3.filter

    4.模拟弱网

    5.获取返回大小

    6.命令

    3.Fiddler快捷键

    =post

    ?qq   搜索关键字

    bold baidu  加粗

    4.常用script

    (1)修改请求的显示样式
    
    If(oSession.uriContains(“bro”)){
    
    oSession[“ui-color”]=”purple”;
    
    }
    
    (2) 修改请求
    
    if(oSession.uriContains("sogou")){
    
         oSession.url = "www.sogou.com?c=1";
    
    }
    
    (3)隐藏返回图像的session
    
    if (oSession.oResponse.MIMEType.Contains("image"))
    
    {
    
    oSession["ui-hide"] = "Script hiding images";
    
    }

    Mock

    1、Anproxy:http://anyproxy.io/cn/
    AnyProxy 是一个基于 Node.js 的代理服务器。这里主要作用

    (1)对https的兼容 (否则就要配置nginx拉)

    (2)把需要mock的链接转移给moco,不需要的正常发送http请求

    2.Moco 一个mockserver

    http://blog.csdn.net/sanjay_f/article/details/50204883

    java -jar moco-runner-0.10.2-standalone.jar start -p 5566 -c D:mockservermockserverconfigssimplefoo.json
    [
        {
            "request" : {
                "uri" : "/v1/public/favorite/default"
                ,
            "queries": {
                "imei": "869011020625742",
                 "sn": "80QBCNJ22CW61"
            }
            },
            "response" : {
                "text" : "{"code":110000,"message":"1111111111111111"}"
            }
        }
    ]

    Anproxy转接请求:达到不同的链接转到不同的sever处理(真实server和mockserver)

     //mark if use local response
        shouldUseLocalResponse : function(req,reqBody){
        
            if(/aa/.test(req.url)){   //被mock接口判断选择
                req.replaceLocalFile = 0;
                return true;
            }
    
            if(/bb/.test(req.url)){
                req.replaceLocalFile = 1;
                return true;
            }
    
                return false;
        },
    
        dealLocalResponse : function(req,reqBody,callback){
            if(req.replaceLocalFile==0){
                 callback(200,'sdds','2222'); //mock数据返回给客户端
               
            }
        }
  • 相关阅读:
    THUWC 2019 第二轮 纯口胡题解
    Codeforces Round #607 (Div. 1) Solution
    Codeforces Round #606 (Div. 1) Solution
    CSP-S 2019 简要题解
    NOIP 2018 简要题解
    luogu P5605 小 A 与两位神仙
    luogu P5606 小 K 与毕业旅行
    AtCoder Grand Contest 040 简要题解
    AtCoder Grand Contest 035 简要题解
    AtCoder Grand Contest 036 简要题解
  • 原文地址:https://www.cnblogs.com/season-xie/p/6337913.html
Copyright © 2011-2022 走看看