一、mitmproxy做扩展

比如接口用例信息收集,回放对比,安全测试都可以那么便可以通过:mitmdump -s xx.py

扩展可查阅中文文档:https://ptorch.com/docs/10/addons-overview

1、有需求将某些请求域名包含的,写入文档方便回放,或者入库等。

import time
import jsondef dumps(txt, beaut=0):""" json序列化:dict -> json """try:if beaut:txt = json.dumps(txt, sort_keys=True, indent=4, ensure_ascii=False)else:txt = json.dumps(txt, ensure_ascii=False)except:txt = txtreturn txtdef loads(txt):""" json反序列化:json -> dict """try:txt = json.loads(txt, encoding='UTF-8')except:txt = txtreturn txtdef response(flow):# 加上过滤条件if flow.request.host in ['192.168.1.1']:request_data, headers = {}, {}# 请求信息组装request_data['method'] = flow.request.methodrequest_data['url'] = flow.request.pretty_url# headersfor key, value in flow.request.headers.items():headers[key] = valuerequest_data['headers'] = headers# bodyis_body = loads(flow.request.content.decode('utf-8'))if is_body:if isinstance(is_body, dict):body = {'json': is_body}else:body = {'data': is_body}request_data.update(body)request_data['response'] = loads(flow.response.content.decode('utf-8'))# 写入文件file = f'mitm-{time.strftime("%Y-%m-%d", time.localtime())}.txt'with open(file, 'a+', encoding='utf-8')as f:f.write(dumps(request_data) + '\n')

2、指定的域名将请求与响应信息抓取下来保存为文件,再做进一步处理或API测试,美哉!

平时功能测试时开好代理,将API请求信息抓取到。

流量回放替代人工写了一部分用例,或者做冒烟测试时可以直接使用只请求GET类型,这样不用担心参数化关联或参数无效情况。

结束

python接口自动化12-流量回放神器:mitmproxy(下)相关推荐

  1. python接口自动化11-流量回放神器:mitmproxy(上)

    简介: mitmproxy是一组工具,可为HTTP/1,HTTP/2和WebSockets提供交互式的,具有SSL/TLS功能的拦截代理. 官方文档:https://docs.mitmproxy.or ...

  2. Python接口自动化之requests请求封装

    ------·今天距2021年253天·------ 这是ITester软件测试小栈第114次推文 在上一篇Python接口自动化测试系列文章:Python接口自动化之Token详解及应用,介绍tok ...

  3. python接口自动化(十)--post请求四种传送正文方式(详解)

    简介 post请求我在python接口自动化(八)–发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先了 ...

  4. python接口自动化实战(框架)_python接口自动化框架实战

    python接口测试的原理,就不解释了,百度一大堆. 先看目录,可能这个框架比较简单,但是麻雀虽小五脏俱全. 各个文件夹下的文件如下: 一.理清思路 我这个自动化框架要实现什么 1.从excel里面提 ...

  5. python接口自动化5-Json数据处理

    前言 有些post的请求参数是json格式的,这个前面第二篇post请求里面提到过,需要导入json模块处理. 一般常见的接口返回数据也是json格式的,我们在做判断时候,往往只需要提取其中几个关键的 ...

  6. python接口自动化-参数化

    原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...

  7. python接口自动化4-绕过验证码登录(cookie)

    前言 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接). 获取不到也没关系,可以通过添加cookie的方式绕过验证码. 一.抓登录coo ...

  8. python接口自动化关联参数_python接口自动化7-参数关联

    前言 我们用自动化发帖之后,要想接着对这篇帖子操作,那就需要用参数关联了,发帖之后会有一个帖子的id,获取到这个id,继续操作传这个帖子id就可以了 (博客园的登录机制已经变了,不能用账号和密码登录了 ...

  9. python接口自动化22-签名(signature)鉴权(authentication)之加密(HEX、MD5、HMAC-SHA256)...

    前言 开放的接口为了避免被别人乱调用,浪费服务器资源,这就涉及到签名(Signature)加密了 API 使用签名方法(Signature)对接口进行鉴权(Authentication).每一次请求都 ...

最新文章

  1. TeamViewer介绍:远程控制计算机
  2. 词向量到Bert代码——部分习题
  3. python--异常处理
  4. 成功解决ImportError: [joblib] Attempting to do parallel computing without protecting your import on a sy
  5. http://www.mamicode.com/info-detail-1208112.html
  6. SAP 电商云 Spartacus UI Quick Order 对应的 CMS 内容
  7. php: 0跟字符串做比较永远是true。 php大bug。
  8. 一文详解Kafka API
  9. 阿里云服务器下安装LAMP环境(CentOS Linux 6.3)(1)
  10. 【股价预测】基于matlab BP神经网络股票价格预测【含Matlab源码 345期】
  11. 更改wordpress上传文件大小限制
  12. 用python算24点及原理详解
  13. 集中趋势度量Measures of Central Tendency
  14. Pytorch transform
  15. 美国国债收益率回复2021年年初水平 黄金同时趋向上走势
  16. php自我介绍50字,【自我介绍50字左右】自我介绍50字
  17. dedecms织梦后台登录一直提示验证码错误
  18. 使用pydicom读取dicom文件,并对文件做一些简单操作
  19. 小谈Intel SGX
  20. ZZULIOJ 1008: 美元和人民币

热门文章

  1. 腾讯课堂点播上云客户端实践总结
  2. BERT详解——原理篇(组会PPT,其中大量参考李宏毅的bert课程视频)
  3. 每日学术速递5.25
  4. EC11、EC16、ECxx旋转编码器按钮软件滤波程序滤除干扰杂波51单片机C程序
  5. 【python 人像抠图】利用阿里云api进行对本地图片进行批量人像抠图
  6. android实时识别,Android-中国象棋-实时识别-实时AI
  7. mysql游标循环的使用_实例详解mysql游标循环的使用
  8. 【物联网天线选择攻略】2.4GHz 频段增益天线模块设备选择
  9. ArcGIS制作旅游时间等时圈
  10. 滤波器对比分析,这四种滤波器你都了解吗?