测试基础与分层67 条

功能测试

验证系统功能是否符合需求规格:输入、处理与输出的正确性,业务规则与权限行为;覆盖正常路径与异常路径。

软件测试速查开发更新于 2026-10-13

功能测试是什么

功能测试验证系统功能是否符合需求规格:输入、处理与输出的正确性,业务规则与权限行为,覆盖正常路径与异常路径。它在单元、集成、系统、验收各层次都存在,方法上依赖等价类、边界值、判定表、场景法等设计技术。功能测试是测试工作的基本面——但功能通过不代表非功能达标:性能、安全、兼容性需要单独设计与执行。

基本信息

依据需求规格、验收标准、业务规则
层次单元/集成/系统/验收均包含功能验证
方法等价类、边界值、判定表、场景法等
范围输入校验、业务规则、状态与权限、集成行为
边界提醒功能测试通过不代表非功能达标

覆盖切面与用例示例

切面典型用例
输入校验类型、长度、格式、范围与特殊字符的组合
业务规则计算精度、操作顺序、互斥与累计逻辑
状态与权限未登录访问、越权操作、会话过期后的行为
集成行为幂等重复提交、失败重试、上下游超时后的一致性

典型使用场景

  • 迭代功能验证:新需求按验收标准逐条核对行为。
  • 缺陷复现:按报告步骤复现并扩展到相邻输入组合。
  • 回归防护:核心业务规则固化为回归用例。
  • 需求评审:把不可测的需求描述挡在开发前。
  • 与自动化分工:手工探索异常路径,稳定路径逐步自动化。
  • 上线前验收:业务方按功能清单做最终确认。

用例设计闭环示意

用例设计闭环示意
1. 读需求:提取输入域、规则与状态
2. 设计:等价类划分 + 边界值 + 判定表/场景
3. 执行:正常路径与异常路径都跑
4. 核对:界面、接口与数据三处都断言
5. 回流:缺陷模式更新到设计清单
功能测试通过不代表非功能达标:性能、安全等属性需要单独设计与执行。
三处断言原则:界面提示、接口响应与数据库状态互相印证,只信其中一处是常见漏检来源。
用例与需求双向挂钩:需求编号写进用例,需求变更时能快速圈出受影响的用例集。

易错点

  • 只测正向流程:异常与边界路径遗漏,用户在真实输入下踩雷。
  • 用例与需求脱节:需求变更后覆盖出现空洞无人发现。
  • 断言只看界面提示:数据未落库或落错库的问题被放过。
  • 把探索空间留给上手感觉:没有设计方法支撑,覆盖质量随人波动。
  • 非功能一票否决写在嘴上:性能与安全没纳入功能验收的检查单,发布前才发现。

数据来源与参考

  • ISTQB CTFL 4.0 大纲(功能测试)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌