抓包(Charles工具入门)
一、charles工具简单使用
1、录制操作
录制请求、清空录制请求:
两种展示请求的视图方式:
2、录制请求的简单分析
(1)请求的总览页面Overview:可查看请求路径、请求方式、请求时间等有关该请求的内容
(2)request:由本机发送出去的请求
request的请求数据:
request-cookies:
(3)response:由服务器返回的数据
三、filter:过滤
在sequence视图下,过滤请求数据。
二、抓包
1、抓包的简单介绍
抓包:(1)浏览器发出的所有请求,都可以用抓包工具抓到;也可以查看服务端返回的信息;
(2)如果开发不写接口文档,可以通过charles抓包,获取接口数据:请求参数等内容;
(3)charles可以模拟弱网测试(测试app时需要模拟2G网络、3G网络);
(4)https的请求:是花钱的,是加密传输的,没有公司的证书是抓不到的。
一般的https是抓不到的,可以在charles中导入证书去进行抓包。
(现在IOS必须要求是https的请求。)
2、抓包的作用
(1)定位问题(可以定位是服务端还是客户端的问题)
例如:发现一个bug,不能确定是后端的问题,还是前端的问题,则可以通过抓包工具抓包,
查看response服务器返回的信息是否正确,若服务器返回的信息正确,则证明是前端的问题,
反之则是后端的问题。
(2)篡改请求(篡改请求能用于测试系统的其他的异常情况)
例如:a.可以测试后端传回一个特别长的字段(超出字段的限制),查看前端是否能正常显示,
前端是否有限制,客户端是否校验好;(比如测试查询余额的时候,传回一个超长数字)。
b.或测试前端向后台传一个超长的数据,后台是否有做限制。
三、篡改数据练习
a.篡改请求
第一步:在所需要拦截的请求处,点击右键,勾选断点(Breakpoints)。
第二步:清空所有抓取到的请求
第三步:重新访问请求,会自动跳出charles的编辑请求的界面
第四步:查看浏览器接收到的返回信息
b.篡改返回:
第一步:与篡改请求操作一致,在所需要拦截的请求处,勾选断点;
第二步:清空抓取的请求;
第三步:重新在浏览器访问页面,会首先弹出篡改请求的页面,此处不篡改,直接继续执行;
第四步:弹出篡改返回的页面,修改返回内容;
第五步:查看浏览器接收到的页面显示。
四、手机抓包
1、打开charles,必须保证手机和电脑是在一个局域网里面
2、手机设置代理
服务器写自己电脑的ip
端口号呢,默认是8888,可自行修改
a.查看charles设置的端口号:Proxy->Proxy Settings
b.手机设置
3、手机设置弱网(Proxy->Throttle Settings)
(1)Proxy->Throttle Settings
(2)Throttle preset:设置网络,比如3G、4G、8M/s、16M/s等;
Bandwidth(kbps):设置上传下载速度
附:抓包工具还有fildder等。
附:抓包工具只能修改本机的返回值发送值,若修改其他机器的数据,则涉及到安全测试了,不会安全测试。
另有搜索到的博客地址,可用于学习:
http://www.cnblogs.com/jiayuchn-test/p/8875105.html
https://www.cnblogs.com/mawenqiangios/p/8270238.html
https://blog.csdn.net/dongyuxu342719/article/details/78933618