最近在学习用Charles模拟接口返回异常值/空值/超时,简单记录 备忘……
1. Charles模拟接口返回异常值
1.1 Block List Setting 方法
Charles --> Tools --> Block List Setting
1)首先打开Block List开关
2)选择自己需要设置的选项,如“drop connection”
3)添加指定的location,如 https://www.baidu.com
4)保存设置~
之后请求百度的接口,会发现接口直接被拦截了
在设置的时候还可以选择 “403 respose”,接口会返回403错误
1.2 Map Local方法
Charles --> Tools --> Map Local Settings
1)打开map local开关
2)将指定接口的返回映射为本地文件
但是map local只能修改接口返回值,无法返回异常 (如500错误或者404错误)
1.3 打断点 Breakpoints
1)例如需要对baidu接口打断点,抓到该接口后,右键选择Breakpoints(或者选择工具栏里的那个六边形也是一样的作用)
2)再次请求该接口,就会出现 edit response,然后修改response的数据就可以啦。
一个完整请求会进入断点模式2次,第一次是request的发出之前,第二次是收到服务器的response但尚未返回给客户端的时候。
所以如果如果没有看到 “edit response” ,execute一下就好啦~
3)将返回状态修改为404以后,点击execute执行,之后这个接口就会变成404
二、Charles模拟接口返回空值
—— 针对读接口模拟返回某一个字段为空
2.1 Map Local方法
Charles --> Tools --> Map Local Settings
1)打开map local开关
2)将指定接口的返回映射为本地文件,在本地文件中将某一字段改为空置即可
(具体操作步骤参考1.2)
2.2 打断点 Breakpoints
打断点后在 response 中将需要置空的字段置空即可
(具体操作步骤参考1.3)
三、Charles模拟接口返回超时
1. 小乌龟~ Throttle Settings
Charles --> Proxy --> Throttle Settings
Charles是支持对指定location限速的~
1)打开小乌龟开关
2)设置只对指定的host生效
3)添加一个指定的location
4)选择一个合适的预设值
然后你再请求这个接口的时候就会发现很慢很慢很慢很慢了……
撒花~✿✿ヽ(°▽°)ノ✿