在日常测试工作中,经常需要测试前端数据正确性,或帮助开发人员定位问题,这样就需要抓包检查接口返回数据。在WEB页面可以使用F12来进行抓包,但app端则需要其他辅助工具帮忙,例如Charles和Fiddler,这一类代理服务器。
Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet. This includes requests, responses and the HTTP headers (which contain the cookies and caching information).
根据Charles官方介绍,是一个Http代理、监控、反向代理,可以使开发者在机器和网络直接看到数据的传输(包括请求、响应、头文件等)
关于这类代理服务器的安装和连接电脑的方法,十分简单,在网上简单百度一下即可。
主要记录一下日常使用的其他功能
- breakpoint
在测试过程中经常会需要各种测试数据来验证系统对不同数据的兼容,但某些数据的确非常难找,并且这样十分浪费时间。
例如工作时遇到一次bug,由于接口可能返回字段类型为null,或“string,而前端仅仅校验了string类型的内容,导致接口返回null时前段崩溃。
这种bug验证需要找到这个字段为null,但数据不好找,可能找一整天都找不到,这个时候Charles就起作用了。
在Charles中选中需要关注的接口,右键找到breakpoint,再次访问该接口就能拦截请求及相应。
此时就可以在response中,找到对应字段做修改,在execute,前端就能看到对应效果了。
2. maplocal
当需要经常修改某些请求或返回内容时,每次的找字段,修改,可能也会浪费一点时间。
这个时候就可以使用mapLocal,修改一次response内容,右键保存到本地。
设置(待补充。。)该接口的返回内容为本地保存的response文件,即可每次请求该接口,返回的都是修改过的response内容
3. 弱网设置
在测试过程中,需要测试app在异常网络状况下是否还能正常运行,例如3G WIFI、2G、极低的网络、无网络这几种情况。
ios 如果是已经装有Xcode的开发者证书,则可以在设置那里设置弱网
android则可以通过Charles设置。
(图、位置待补)
可设置成各种网络情况,包括。。。