测试工作之定位问题:用Charles抓socket的包

提bug是需要测试先定位问题的,那么抓包就很重要了,不止是普通的抓取http https的包来判断接口数据问题,还需要会抓socket的包,确定接口是否有问题。

socket像聊天一样

有一说一,IOS的方法二只能抓测试的app,正式的抓不到

一 了解socket

Socket(套接字)是一种提供不同计算机之间通信的机制。它允许在网络上的不同设备之间传输数据。Socket是一种抽象层,为应用程序提供了一组接口,使它们可以通过网络进行通信。

具体来说,Socket 提供了一种在网络上发送和接收数据的方式,它通过一个端口(port)和一个 IP 地址来标识网络上的特定设备。Socket 通常用于实现客户端-服务器模型,其中一个应用程序充当服务器,等待其他应用程序(客户端)连接并交换数据。

Socket通信可以在同一台计算机上的不同进程之间进行,也可以在网络上的不同计算机之间进行。在网络编程中,开发人员可以使用不同的编程语言(如C、Python、Java等)的Socket API来创建网络应用程序。

Socket通常分为两种类型:流套接字(Stream Socket)和数据报套接字(Datagram Socket)。流套接字提供一个可靠的、面向连接的通信,而数据报套接字则提供无连接的通信,数据通过单个数据包进行传输。

总体而言,Socket是网络编程中的基本构建块,允许应用程序通过网络进行双向通信,传输数据和信息。

二用Charles抓socket的包

2.1安装Charles及安装手机端的证书 抓http 和https包的设置方法

就不写了 可以看另一篇关于使用Charles之路

2.2 IOS  抓socket(方法一)

2.2.1手机WiFi先配置好Charles代理

输入IP和端口号(这步应该都会吧)

2.2.2Charles设置 socket链接地址和端口

点击Proxy——Proxy Settings 

2.2.3 设置SSL  (这一步以前设置了 抓特定的包就不用再设置了没有就设置一下 )

点击Proxy——SSL Proxying Settings

2.2.4iOS手机vpn配置编辑节点 (app大家应该认识吧)

2.2.5 可以愉快得抓socket的包啦

2.3 IOS  抓socket(方法二)

方法一没用的情况下,我发现方法二是可行的

不需要vpn

2.3.1 手机WiFi先配置好Charles代理

WiFi代理输入IP和端口号

2.3.2 iOS手机打开开发者模式

打开开发者模式方法一:

手机设置——隐私与安全性——在最下面找到开发者模式打开——最后在设置能看得开发者

如果在隐私与安全性没有找到开发者模式,那么得靠方法二

方法二:那就是找开发打个app测试包,这样子就有开发者了。是的 就是这样

2.3.3Charles设置 socket链接地址和端口

随便设置

2.3.4设置SSL

点击Proxy——SSL Proxying Settings

2.3.5就能抓到socket的包了  找到这个“圆圆黑黑以wss:”开头的

2.4安卓手机 抓socket

(下次再写,因为公司现在不做安卓的app,没测到)

2.4.1要下载 Postern
Postern简介

Postern并不是抓包工具,它是一个代理工具。

它可以将http请求转为socket,并且包转发到Charles上,这样就可以抓到更多的包。

三 有bug

3.1 按照上面方法一iOS的流程 抓不到包报错了

换一个WiFi也不行

手机重新安装证书不行

电脑重新安装证书不行 手机一直提示此服务器的证书无效 

用方法二就可以了,有些奇怪 后面再看看。

  • 26
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值