第 3 阶段:专项测试通关检查¶
通关说明
完成专项测试阶段后,用这个清单检查自己是否掌握了接口测试、性能测试、安全测试等专项能力。如果 80% 以上都能做到,可以进入第 4 阶段。
一、阶段目标¶
掌握接口测试、性能测试、安全测试等专项能力。
二、必备能力清单¶
接口测试¶
接口测试是检查程序之间通信是否正确的测试,比功能测试更底层,发现问题更早。
- Header:请求头,包含 Token、Content-Type 等附加信息
- 正向测试用例:正常场景,比如用正确的用户名密码登录
- 异常测试用例:错误场景,比如用错误的密码登录
- 安全测试用例:攻击场景,比如尝试 SQL 注入
- 数据一致性:接口操作后,数据库中的数据是否正确变化
需要掌握的能力:
- 能解释 HTTP 请求和响应的结构
- 能解释状态码的含义(200、301、302、400、401、403、404、500)
- 能解释 Header、Cookie、Token 的作用
- 能根据接口文档设计正向测试用例
- 能根据接口文档设计异常测试用例
- 能根据接口文档设计安全测试用例
- 能根据接口文档设计数据一致性测试用例
- 能使用 Postman 调试接口并编写断言
- 能使用 Python + Requests 做接口自动化
性能测试¶
性能测试是检查系统在高负载下是否稳定、快速的测试。
- 负载测试:逐步增加用户数,观察系统表现
- 压力测试:超过系统承受能力,观察系统极限
- 稳定性测试:长时间运行,观察系统是否稳定
- TPS:每秒处理的事务数,越高越好
- 响应时间:从请求到返回的时间,越短越好
- 并发数:同时访问系统的用户数量
- 错误率:请求失败的比例,越低越好
- 性能瓶颈:限制系统性能的短板,比如数据库慢、内存不足
需要掌握的能力:
- 能解释性能测试的目的和类型(负载测试、压力测试、稳定性测试)
- 能解释性能指标(TPS、响应时间、并发数、错误率)
- 能使用 JMeter 创建测试计划
- 能配置线程组、HTTP 请求、监听器
- 能使用参数化和关联
- 能分析性能测试结果
- 能识别性能瓶颈
安全测试¶
安全测试是检查系统是否存在安全漏洞的测试,防止被黑客攻击。
- SQL 注入:通过在输入框输入 SQL 代码,欺骗服务器执行恶意操作
- XSS:跨站脚本攻击,在页面中注入恶意 JavaScript 代码
- CSRF:跨站请求伪造,诱骗用户执行非本意的操作
- 越权访问:普通用户能访问管理员的功能(垂直越权),或访问其他用户的数据(水平越权)
- 认证:验证用户身份,比如登录
- 授权:验证用户权限,比如能否访问某个功能
需要掌握的能力:
- 能识别 SQL 注入漏洞
- 能识别 XSS 漏洞
- 能识别 CSRF 漏洞
- 能识别越权访问漏洞
- 能识别敏感信息泄露
- 能检查接口的认证和授权
- 能检查密码策略和会话管理
数据校验¶
- 能使用 SQL 校验业务数据
- 能使用 Redis 校验缓存数据
- 能使用 MongoDB 校验文档数据
- 能通过日志分析问题
三、实操任务¶
任务 1:接口测试用例设计¶
为登录接口设计测试用例:
- 正向用例:正确的用户名和密码
- 异常用例:错误的密码
- 异常用例:不存在的用户名
- 异常用例:空用户名或密码
- 异常用例:SQL 注入尝试
- 异常用例:XSS 攻击尝试
- 安全用例:暴力破解防护
- 数据一致性用例:登录成功后数据库状态
任务 2:性能测试¶
对登录接口做性能测试:
- 创建 JMeter 测试计划
- 配置 10 个并发用户
- 运行 5 分钟
- 记录 TPS、响应时间、错误率
- 分析性能瓶颈
任务 3:安全测试¶
检查登录接口的安全性:
- 检查是否有 SQL 注入防护
- 检查是否有 XSS 防护
- 检查是否有暴力破解防护
- 检查是否有敏感信息泄露
- 检查 Token 是否安全
任务 4:数据校验¶
- 使用 SQL 校验登录成功后的用户状态
- 使用 Redis 校验 Token 缓存
- 通过日志分析登录请求
四、测验入口¶
完成以上任务后,建议做以下测验检验学习效果:
- 接口测试方法论 - 深入理解接口测试
五、通关判断¶
通过标准¶
- 必备能力清单完成 80% 以上
- 实操任务全部完成
自我评估¶
如果你能做到以下几点,说明已经掌握专项测试:
- 能从接口文档独立设计接口测试方案
- 能从性能、安全、数据一致性角度补充测试风险
- 能把发现的问题写成清晰的测试结论
六、下一步¶
如果通关检查通过,进入第 4 阶段:自动化测试
如果还有薄弱点,建议:
- 回看 接口测试方法论
- 回看 JMeter 性能测试
- 回看 Web 安全测试
- 完成 章节练习