常用功能?


1、为什么能抓包

  代理服务器,模拟客户端向服务端发送请求。

2、抓包

    2.1抓APP的包,手机和电脑在同一个局域网,然后cmd命令ipconfig查看IP,手机代理服务器设置为IP地址,端口号8888,保存

    2.2抓web的包;三大设置,1:安装证书-:tools-options-https,全部勾选

                2:自动解压HTTP响应--点击decode,这样就会自动解压HTTP响应,否则我们看到的HTTP响应是乱码

                3:隐藏”Tunnel to “请求,步骤:rules-Hide CONNECIS,这样Fiddler就不会捕获大量无用的握手验证请求。我们抓包是为了看HTTP请求和响应的数据内容,而不关心HTTPS的通信是怎么建立的。

    2.3抓HTTP的包,

    2.4抓HTTPS的包,需要下载安装信任CA证书

    2.5 抓不到包的原因:前端设置隐藏,所以抓不到包

3、改包--下断点

  方法1,rules--before requests改请求,rules--after responses改响应

  方法2,左下角黑色输入框,bpu+域名--该请求,bpafter+域名--改响应

  方法3,左下角点一下,红色“T”图标是 改请求,再点一下“D”图标是 改响应

4、分析包

  1、判断前后端是否做了校验,前端是抓不到包,友好提示,后端根据请求内容返回正确的响应信息

  2、定位BUG,用Fiddler抓包,请求有问题就是前端问题,响应有问题就是后端的问题;

          看请求参数和响应参数,请求参数有问题是前端问题,响应参数有问题就是后端问题;

            去看下数据库,如果和数据库不一致也是后端的问题。

4、弱网测试

  1、Fiddler中script,找到上传和下载的两行代码(搜索kb),修改网速,然后保存就可以了

  2、项目比较急的话,会用手机自带的2G、3G、4G、5G和WiFi进行测试

  3、还有腾讯的qnet,修改网速,保存也可以

5、筛选

  1、点击Filters,

  2、点击show only the following hosts,

  3、勾选use Filters,

  4、输入框填写要抓包的域名,如果要抓多个位置的包,填写多个域名,多个域名用英文分号 ; 隔开

  5、点击actions,就可以筛洗了

6、埋点

  用Fiddler抓取埋点字段,在用户行为管理系统中查询该字段,以及数据库查询埋点字段,查到就是埋点成功,查不到埋点失败

7、mock数据

  7.1、使用场景?

    1、无法控制第三方系统接口的返回,返回的数据不满足要求

    2、依赖系统还未开发完成,就需要对被测系统进行测试

    3、模拟一些异常场景,比如服务器崩溃,返回503状态码

  7.2、步骤?

    1、创建一个tx文件,将目标响应数据写入进去,注意:保存格式为utf-8,否则响应数据可能会乱码

    2、点击目标请求---点击右侧的’autoresponder‘--'enable rules'

    3、点击add rules,rule editor 下方选择 find a file

7、常见的content-type:文本格式,图片格式,应用格式

    文本格式:text/html:HTML格式

         text/plain:纯文本格式

         text/xml:XML格式

    图片格式:image/gif:gif格式

         image/jpeg:jpg格式

         image/png:png图片格式

    应用: application/xhtml+xml:XHTML格式

       application/xml:XML格式

       application/atom+xml:Atom XML聚合格式

       application/json:JSON格式

       application/pdf:pdf格式 

       application/msword:word文档格式

       application/octet-stream:二进制流数据(如常见的文件下载)

       application/x-www-form-urlencoded:

中默认的encType,from表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式) 

8、HTTP和HTTPS的区别

9、常见状态码

10、HTTP请求方法

11、TCP和UDP的区别

12、一次完成的HTTP过程

13、TCP的三次握手

  1、要求建立联机,浏览器发送标有SYN的数据包给web服务器已读,

  2、确认联机信息,web服务器返回标有SYN/ACK的数据包给浏览器,

  3、确认建立联机成功,浏览器发送标有ACK的数据包给web服务器