zoukankan      html  css  js  c++  java
  • Fiddler使用 断点 模拟返回 AutoResponder Mock 模拟数据 相关学习记录

    断点

      测试中有时需要改变发出去的请求信息,需要用到打断点的方法。断点包含两种方式:

        before response:在request请求的时候,未到达服务器之前,一般用来修改请求参数

        after response:在服务器响应之后,在Fiddler将响应传回给客户端之前。我个人用的很少,一般通过mock方法来辅助测试,不向服务器发起真正的请求。

      两种常用的打断点方式:

      设置全局断点

        全局断点就是中断Fiddler捕获的所有请求,点击rules-> automatic breakpoint ->before requests。设置后,会发现所有的请求都无法发出去,出现了T的符号,这时点Go按钮,就继续下一步。

        选中需要修改的请求,右侧打开WebForms,里面的参数都可以修改,修改之后点Run to Completion即可提交,即成功修改请求参数。

        打全局断点后是无法正常上网的,需要清除断点:rules-> automatic breakpoint ->disabled

      设置单个断点

        只针对某条请求打断点,在命令行中输入指令即可。

        before response:在命令行里输入bpu 请求地址(回车)。例如:bpu https://m.baidu.com/回车。 只会拦截该请求接口,在右侧可以修改请求的内容。取消该断点的话,在命令行输入bpu回车即可。

        after response:命令行里输入bpafter 请求地址(回车),取消时输入bpafter回车即可。

    Fiddler 模拟返回

    • 1 修改返回内容   
    • 2 返回本地内容
    • 3 模拟状态码

      保存会话

        先抓包, 保存. 选中请求右键 . Save > Selected Sessions > in ArchiveZIP   

      AutoResponder   模拟返回

        需要 模拟返回数据时 勾选上方的Enable rules 等三个勾选框和需要mock的请求链接,此时下方列表中启用的rules才生效. 不需要mock的时候将链接前面的勾去掉即可。

        单击 Import 选择之前保存的会话文件. 导入后 选中记录,

      • 右键 Edit Response 编辑本地内容.
      • 下方可以修改匹配内容, 返回文件. 返回状态码.

    选中需要mock的请求,点击右侧的Autoresponder,点击add rule,该条请求被加入进来。且可在下方修改匹配规则:

      字符匹配

        example可匹配 http://www.example.com和http://example.com.cn

      完全匹配

        以EXACT开头表示完全匹配,如上边的例子

        EXACT: http://m.baidu.com/s

      正则表达式匹配

        以regex: 开头,使用正则表达式来匹配URL

        如:regex:(?insx).*\.(css|js|php)$ 表示匹配所有以css,js,php结尾的请求url

      编辑rules 下拉列表中选择需要mock的结果后点击save。即可成功拦截该请求,返回你想要的结果。

    工作中需要的重定向方式Fiddler基本都能满足。

    • 包含各种404、502等网络状态。
    • 支持将该条请求delay,并且可以修改delay的时间(毫秒)。
    • Find a file则可以将请求指向本地文件,可以是json等脚本文件,也可以是MP4、JPG、jar等文件,具体看工作中需要mock的请求类型。

    Mock之后发起的请求,可以在response中查看是否mock成功。如果mock没有成功,请检查手机代理是否设置生效?匹配规则是否填写正确?勾选框是否已勾选?

    以上为在测试移动端APP时使用Fiddler进行抓包的常用方法和遇到的问题,Fiddler很强大,支持很多的功能和场景。

    Mock

    • 什么是mock   
      • mock数据 mock测试就是在测试中, 对于某些不容易构造或不容易获取的对象, 用一个虚拟的对象来创建以便测试的测试方法.
      • 单元测试中常见的一种技术, 主要作用是模拟一些在应用中不容易构造或比较复杂的对象, 从而把测试与测试边界意外的对象隔离开.
    • mock作用
      • mock对象有助于从测试中消除依赖项, 使测试更单元化.
      • 例如 测试天气预报的功能, 根据不同的天气, 展示不同的图片.
    • 如何mock数据
      • mock-server, 自定义返回数据.
    • 如何搭建mock服务
  • 相关阅读:
    java并发之阻塞队列
    37二叉树的深度+变式题输出最长路径上的所有节点
    36数字在排序数组中出现的次数
    35 两个链表的第一个公共结点
    34 数组中的逆序对+改进低效归并排序
    33 第一个只出现一次的字符+ASCII码
    编程练习赛42+二维动态数组的输入总结
    32 丑数
    在Ubuntu中启动./jmeter-server报错Server failed to start: java.rmi.RemoteException: Cannot start. ranxf is a loopback address.解决方法
    Ubuntu&Linux系统出现文件系统只读Read-only file system 的快速解决方法
  • 原文地址:https://www.cnblogs.com/levia/p/14623531.html
Copyright © 2011-2022 走看看