软件测试必背理论大全
一、生命周期理论
1. 软件生命周期(SDLC)
软件从产生到淘汰的全过程:
需求分析 → 系统设计 → 编码开发 → 测试验证 → 上线发布 → 运行维护 → 淘汰下线
「作用:」
让软件开发有流程、有规范。
2. 测试生命周期(STLC)
测试工作的完整流程:
需求分析 → 测试计划 → 测试用例设计 → 测试环境搭建 → 测试执行 → 缺陷跟踪 → 测试总结
「作用:」
规范测试工作流程,提高效率。
3. 缺陷生命周期(Bug生命周期)
缺陷从发现到关闭的过程:
新建 → 指派 → 修复中 → 已修复 → 回归测试 → 已关闭
可能状态:
重新打开、延期修复、拒绝修复
二、测试分类理论
4. 黑盒测试
不看代码,只验证功能是否正确。
例如:
-
登录功能是否正常 -
支付功能是否成功
5. 白盒测试
查看代码逻辑进行测试。
例如:
-
判断分支是否执行 -
循环是否覆盖
6. 灰盒测试
了解部分系统结构进行测试。
例如:
知道接口逻辑,但不看全部源码。
三、测试设计方法(高频)
7. 等价类划分
把输入数据划分为有效类和无效类,每类选代表数据测试。
例如:
年龄 1~100
-
有效类:1~100 -
无效类:小于1、大于100、空值
8. 边界值分析
错误容易发生在边界位置。
例如:
年龄 1~100
测试:
0、1、2、99、100、101
9. 判定表法
适用于多个条件组合测试。
例如:
会员 + 优惠券 + 满减活动
不同组合产生不同结果。
10. 因果图法
输入条件和输出结果关系分析。
适用于复杂业务逻辑。
11. 场景法
按照用户真实操作流程测试。
例如:
登录 → 搜索商品 → 下单 → 支付
12. 错误推测法
根据经验判断哪里容易出Bug。
例如:
-
输入框长度 -
重复提交 -
网络中断
四、测试阶段理论
13. 单元测试
测试最小代码单元(函数、方法)。
通常开发人员执行。
14. 集成测试
测试多个模块组合后是否正常。
例如:
登录模块 + 用户中心模块
15. 系统测试
测试整个系统功能。
由测试人员执行。
16. 验收测试
由客户或用户确认是否满足需求。
五、专项测试
17. 回归测试
修改代码后验证旧功能是否受影响。
18. 冒烟测试
验证主要功能是否能运行。
例如:
-
能否登录 -
首页是否打开
19. 性能测试
验证系统速度、响应时间、吞吐量。
20. 压力测试
高负载下系统表现。
例如:
10万人同时抢购。
21. 安全测试
检查漏洞、权限、SQL注入等问题。
22. 兼容性测试
不同浏览器、手机、系统是否正常。
六、经典测试原则(必考)
23. 穷尽测试不存在
不可能测试所有情况。
只能选择重点测试。
24. 尽早测试
越早发现问题,修复成本越低。
25. 缺陷集群效应
大部分缺陷集中在少数模块。
26. 杀虫剂悖论
重复执行同一批测试用例,发现新Bug能力会下降。
要持续更新测试用例。
27. 测试依赖上下文
不同项目测试方法不同。
-
金融系统重安全 -
游戏重体验
28. 不存在缺陷谬论
没有Bug,不代表软件成功。
满足用户需求才重要。
七、开发模型
29. V模型
开发阶段和测试阶段一一对应。
-
需求 ←→ 验收测试 -
概要设计 ←→ 系统测试 -
详细设计 ←→ 集成测试 -
编码 ←→ 单元测试
30. W模型
测试活动与开发活动并行开展。
强调尽早测试。
31. 敏捷开发
小步快跑,快速迭代,持续交付。
特点:
-
需求变化快 -
周期短 -
团队协作强
32. DevOps
开发 + 测试 + 运维协同工作。
提高交付效率。
八、质量理论
33. 软件质量六大特性
-
功能性 -
可靠性 -
易用性 -
效率 -
可维护性 -
可移植性
34. 软件质量模型
衡量软件质量是否达标的标准体系。
九、自动化测试理论
35. 测试金字塔
底层多,上层少:
-
单元测试(最多) -
接口测试(中间) -
UI自动化(最少)
36. CI/CD
持续集成、持续交付。
代码提交后自动构建、自动测试、自动部署。
十、面试最高频概念(必须背熟)
-
黑盒测试和白盒测试区别 -
回归测试和冒烟测试区别 -
等价类划分 -
边界值分析 -
软件生命周期 -
测试生命周期 -
缺陷生命周期 -
Bug等级划分 -
测试用例怎么写 -
如何保证软件质量
十一、面试万能回答模板
软件测试主要通过测试理论和方法保障产品质量,例如:
-
使用等价类、边界值设计测试用例 -
通过回归测试保证修改后旧功能正常 -
根据缺陷集群原则重点测试高风险模块 -
结合生命周期流程规范测试活动
十二、初级测试岗必背20个
-
软件生命周期 -
测试生命周期 -
缺陷生命周期 -
黑盒测试 -
白盒测试 -
等价类划分 -
边界值分析 -
回归测试 -
冒烟测试 -
性能测试 -
接口测试 -
兼容性测试 -
Bug等级 -
测试用例 -
测试报告 -
V模型 -
敏捷开发 -
测试金字塔 -
缺陷集群 -
杀虫剂悖论
夜雨聆风