charles

前言

工作中,charles不管是测试人员还是客户端开发人员都是比较常用的。
本人是名测试就从测试角度来简单介绍下charles常用的功能。
测试人员使用charles的应用场景主要还是为了定位bug及创造测试场景
  • 手机连接代理
  • 数据查看
  • 弱网模拟
  • mock数据
  • SSL证书安装

以苹果手机为例如何连接charles,首先charles需要开启代理服务器

ios如何配置charles 苹果手机charles怎么用_数据

接着点击设置代理服务器这里端口是自己填写的,接下来会用到,这样charles代理服务器已经设置好了

ios如何配置charles 苹果手机charles怎么用_ios如何配置charles_02


接着拿起手机,设置手机代理(手机电脑必须保持同一wifi内)

ios如何配置charles 苹果手机charles怎么用_ios如何配置charles_03


ios如何配置charles 苹果手机charles怎么用_数据_04


电脑IP如何获得(windows在cmd中输入ipconfig获取,mac在终端输入ifconfig)

或者mac电脑点击wifi–>打开网络偏好设置

ios如何配置charles 苹果手机charles怎么用_charles_05


这个时候打开软件,在charles会出现一个弹窗,点击allow即可查看截包数据了

ios如何配置charles 苹果手机charles怎么用_charles_06


以网易云为例

ios如何配置charles 苹果手机charles怎么用_测试过程_07


查看charles数据与手机图对比,接口整体信息如下

ios如何配置charles 苹果手机charles怎么用_ios如何配置charles_08


接口请求信息如下

ios如何配置charles 苹果手机charles怎么用_charles_09


接口返回数据如下

ios如何配置charles 苹果手机charles怎么用_ios如何配置charles_10


在测试过程我们需要模拟弱网该场景,charles也提供了该功能

ios如何配置charles 苹果手机charles怎么用_数据_11


接着我们去设置我们需要的场景

ios如何配置charles 苹果手机charles怎么用_代理服务器_12


接着手机上网速就会限速啦


同样我们测试过程中,可能由于数据比较难创造,所以charles我们可以用来接口mock,charles提供了三种接口mock方式

1.breakpoints类似打断点模式,选择我们需要mock的接口右击,设置后重新请求接口,修改即可,不太稳定

ios如何配置charles 苹果手机charles怎么用_测试过程_13


然后重新请求该页面

ios如何配置charles 苹果手机charles怎么用_测试过程_14


附上效果图

ios如何配置charles 苹果手机charles怎么用_数据_15


2.使用Map Local功能,流程为保存该响应结果到本地,然后修改后使用

ios如何配置charles 苹果手机charles怎么用_charles_16


ios如何配置charles 苹果手机charles怎么用_代理服务器_17


ios如何配置charles 苹果手机charles怎么用_charles_18


3.Map Remote 相当于重定向,右击接口后将该接口的请求转到新接口上

ios如何配置charles 苹果手机charles怎么用_测试过程_19


ios如何配置charles 苹果手机charles怎么用_ios如何配置charles_20


可以使用mocky等在线工具,产生新的接口


上面介绍的为http接口协议的抓包,如果需要抓https的包则需要安装ssl证书,上图,点击help

ios如何配置charles 苹果手机charles怎么用_ios如何配置charles_21


然后进入钥匙串,始终信任该证书,效果图

ios如何配置charles 苹果手机charles怎么用_数据_22


这时候电脑端ssl已经完事,接着是手机端安装,打开手机浏览器,输入chls.pro/ssl 然后会下载该证书,信任后即可(注意,一定要连接代理再输入网址)

大功告成,https接口也可以抓取了,介绍就先到这里了!!