使用postman抓取API请求为自动化测试准备
前置条件
请确保你的手机和 postman 所在电脑处于同一个 WIFI 网络。
启用 postman 代理
首先在启动后的 postman 的主界面的右下角点击【Capture Requests】,进入如下界面:
- 勾选 Save Response for Requests.
- 选择 Save requests to a collection. 到一个新创建的 collection.
- 在 URL must contain.填写仅过滤关心的请求。
点击【Enable Proxy】设置代理: 设置完代理后回回到第一个界面。 点击【Start Capture】开启抓取请求。
手机设置(iphone)
设置 => 选取已经链接的 WIFI 网络 => 在该 WIFI 网络详情页最底部,选取【配置代理】 => 选择手动 => 填写服务器和端口后点击【存储】。
该步骤设置的端口号与 PostMan 中设置的 proxy 端口号 8888 一致即可。
打开需要测试的 APP,PostMan 上将会自动抓取所有请求。选取关心的请求,最后将这些请求保存到 collection.
Runner 重复请求
选中 collection 后,点击右下角的【Runner】,将左侧捕获到的请求 collection 拖到 Runner 主界面,即可进行重现请求。
也可以将这些请求集合导出 json 后转化为 JMeter 的请求进行压测。
注意事项
使用 PostMan 做代理抓取到 POST 类型等请求,可能会自动加入 content-length=12 请求头。实际上一般情况下加入的 content-length=0 才正确。 因此,这里算是个坑,即抓取下来的 POST 请求需要删除该自增的 content-length 请求头或将该请求头的值设置为 0,才能够重现正确的请求及返回。