一、网络模型
1.1 OSI 七层模型与 TCP/IP 四层模型
- TCP/IP 四层模型:包含应用层(整合了 OSI 模型中表示层、会话层功能)、传输层、网络层、网络接口层 。
二、各层核心协议
| 层级 | 代表协议 |
|---|---|
| 应用层 | HTTP、HTTPS、FTP |
| 传输层 | TCP、UDP |
| 网络层 | IP |
| 网络接口层 | WiFi、ARP、RARP、蓝牙 |
三、TCP 与 UDP 对比
| 特性 | TCP | UDP |
|---|---|---|
| 连接方式 | 需通过三次握手建立连接后传输数据 | 无需预连接,知晓目标 IP 和端口即可直接传输数据 |
| 数据保障 | 确保数据完整、有序传输,通过重传等机制避免丢包 | 不保证数据可靠性,可能出现丢包、乱序情况 |
| 资源消耗 | 占用资源多,传输效率相对较低 | 资源消耗少,传输速度快 |
| 应用场景 | 适用于文件传输、网页浏览等对数据准确性要求高的场景 | 常用于视频播放、在线游戏等对实时性要求高,可容忍部分数据丢失的场景 |
四、HTTP 与 TCP 关系
- 层级差异:HTTP 属于应用层协议,TCP 属于传输层协议。
- 依赖关系:HTTP 基于 TCP 协议实现数据传输。
- 连接特性:TCP 是长连接;HTTP 传统模式下为短连接,每次请求响应完成后客户端主动断开 。
五、网络连接机制
5.1 三次握手
- 客户端:向服务端发送带有
SYN标志位的数据包,发起连接请求。 - 服务端:返回带有
SYN+ACK标志位的数据包,确认收到请求并同意建立连接。 - 客户端:发送
ACK数据包确认服务端响应,完成连接建立。
5.2 四次挥手
- 客户端:发送
FIN数据包,请求断开连接。 - 服务端:回复
ACK确认收到断开请求,同时继续处理剩余数据传输。 - 服务端:数据发送完毕后,发送
FIN数据包,通知客户端准备关闭连接。 - 客户端:返回
ACK确认,等待一段时间后正式关闭连接。
六、URL 访问流程
- 域名解析:输入 URL 后,通过 DNS 系统将域名解析为对应的 IP 地址。
- 连接建立:基于 HTTP 协议,通过三次握手与服务器建立 TCP 连接。
- 数据交互:客户端发送 HTTP 请求,服务器处理后返回响应数据。
- 页面渲染:浏览器接收响应数据,解析并渲染页面。
- 连接断开:数据传输完成,通过四次挥手关闭 TCP 连接。
七、Bug 定位方法
| 抓包观察项 | 前端问题表现 | 后端问题表现 |
|---|---|---|
| 请求信息 | URL 错误、请求方法错误、Content-Type 配置错误等 | 无 |
| 响应信息 | 无 | 响应内容错误(如数据库查询报错)、响应状态码 5XX (服务器内部错误) |
| 状态码 | 4XX 状态码(如 404 资源未找到) | 5XX 状态码(如 500 服务器内部错误) |
八、登录功能测试方案
8.1 UI 测试
- 检查界面字体样式、图标布局是否美观协调。
8.2 功能测试
- 登录方式覆盖:测试账号密码登录、微信/微博扫码登录等所有支持方式。
- 边界值测试:输入用户名/密码长度的最大、最小值及临界值,验证是否触发正确错误提示。
- 等价类划分:使用合法/非法字符组合(如特殊符号、数字、字母混合)测试登录功能。
- 空值测试:验证用户名、密码为空时的系统响应。
- 重复登录:检查同一账号重复登录时是否存在账号互踢、会话管理异常。
- 安全策略:测试密码错误多次是否触发锁定机制、密码找回功能是否正常 。
8.3 兼容性测试
- 环境覆盖:在不同操作系统(Windows、iOS、Android 等)、浏览器(Chrome、Firefox、Safari 等)及分辨率下验证功能与 UI 表现。
- 弱网测试:模拟 2G/3G、WiFi 弱信号等环境,检查网络异常提示是否合理。
8.4 易用性测试
- 验证回车提交、扫码快捷登录等功能;评估验证码辨识度与输入便捷性。
8.5 性能测试
- 测量登录响应时间;模拟高并发场景,测试系统吞吐量与稳定性。
8.6 安全测试
- 检查密码是否加密传输、显示是否遮挡;验证账号密码是否以明文形式存储或传输;测试登录时间与设备环境限制策略。
4417

被折叠的 条评论
为什么被折叠?



