app抓包、网络限速、接口mock、修改接口请求参数、修改接口返回参数

抓取手机网络包

  • 使用场景:
    测试手机app时,功能出现异常,通常就需要通过截取网络封包来分析、定位问题
  • 前提:手机和电脑连接同一个Wi-Fi
  • 在charles菜单中查看电脑IP地址:
Help -> Local IP Address
  • 在手机中设置代理(以iPhone为例):
设置 -> 无线局域网 -> 点击已连接的网络 -> HTTP代理 -> 手动
服务器:填写上面获取到的电脑IP地址
端口:8888
  • charles弹出提示框后,点击Allow按钮后,就可以抓取手机网络包了

抓HTTPS包

  • 电脑安装SSL证书(以Mac为例):
Help -> SSL Proxying -> install charles root certificate
  • 手机安装SSL证书(以iPhone为例):
1.在charles中获取下载地址:
Help -> SSL Proxying -> install charles root certificate on a mobile device...
2.在手机浏览器中输入地址并安装
3.手机证书信任:
设置 -> 通用 -> 关于本机 -> 证书信任设置

4.在charles中添加域名

proxy -> SSL proxy settings 
勾选`enable ssl proxying`
点击`add`添加相应域名地址

网络限速

  • 使用场景:
    有时需要测试手机app在网络状况比较差时的表现
    题外话,电脑端chrome可以通过开发者工具配置后达到网络限速的效果
  • charles开启/配置网络限速
proxy -> throttle settings -> 勾选`enable throttling`
`only for selected hosts`:指定host限速
`throttle conficonfiguration`:选择/设置 网速

MOCK

  • 使用场景:
    修改接口返回:比如一个支付订单有已过期、已失效、已支付、待支付、已取消、待审核等状态,不用mock就需要真正的生成这些不同状态的订单,而利用mock方法,就可以通过charles打断点,修改接口返回的各种状态达到覆盖测试要求
  • Breakpoints:适合做一些临时性的修改
选中需要mock的请求 -> 右键 -> breakpoints

菜单地址:proxy -> breakpoints settings

再次请求该接口时就可以编辑请求参数,编辑后点击execute发起请求,返回结果后,可以在response中编辑返回结果,编辑后再次点击execute后,结果才会返回到手机app

  • Map:长期地将某一些请求重定向到另一个网络地址或本地文件
map remote:Tools -> map remote
map local:Tools ->map local
  • Rewrite:对网络请求的返回结果进行一些正则替换
Tools -> rewrite
  • 修改网络请求内容:
    在charles中选中一条网络请求,右键,选择compose,修改请求参数后点击execute触发请求
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、背景 测试存在问题:1、测试环境接口不稳定2、业务系统不是孤立存在的,关联方太多,而且关联系统常常出现不稳定的...
    萧竹阅读 14,004评论 1 19
  • “当你老了,头白了,睡意昏沉。炉火旁打盹,请取下这部诗歌,慢慢读,回想你过去眼神的柔和。回想它们昔日浓重的阴影。”...
    li成林阅读 3,468评论 3 3
  • 第12章 科学的奥秘 下午晚些时候,罗杰·麦肯齐从箍桶匠那里回来,发现妻子坐在餐桌前一脸沉思凝视着面前的一个物体...
    茄喵阅读 1,924评论 1 1
  • 读《史记》有感 “厥协六经异传,整齐百家杂语”的《史记》,集先秦、汉初文化之大成,《...
    Yerwin阅读 3,483评论 0 0
  • 浑浑噩噩三十年过去了,十年前还经常回头看之前生活中的点点滴滴,现如今便再没了以往的心绪。在这个和平的年代里,本应活...
    万里爱情阅读 1,514评论 0 0