1、软件测试流程
2、软件测试过程模型
测试过程的质量将直接影响测试结果的准确性和有效性。
2.1 V模型
V模型揭示了开发过程与测试过程中各阶段的对应关系。
V模型的缺点:
- V模型仅仅把测试过程作为在需求分析、系统设计及编码之后的一个阶段,忽视了测试对需求分析、系统设计的验证;
- 需求的满足一直到后期的验收测试才被验证,没有体现出“尽早地和不断地进行测试”的原则。
2.2 W模型
W模型由两个V字型模型组成,分别代表测试与开发过程,明确表示出了测试与开发的并行关系。
优点:
- 测试的活动与软件开发同步进行
- 测试对象不仅仅是程序,包括需求和设计
- 尽早发现软件缺陷可降低软件开发的成本
局限性:
在W模型中,需求、设计、编码等活动被视为串行的,这样就无法支持灵活的迭代。
2.3 H模型
H模型将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备和测试执行活动清晰地体现出来。
H模型揭示了一个原理:软件测试是一个独立的流程。
H模型指出软件测试要尽早准备,尽早执行。
2.4 X模型
X模型定位了探索性测试,即不进行事先计划的特殊类型的测试,这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误。
3、测试过程(工作独立性)
- 研发团队内部的测试岗位
- 企业内部的独立于研发部门的测试岗位
- 专门的测试外包公司的岗位
- 开发人员自己测试
测试独立性由高到低排序:
3>2>1>4
4、软件测试过程理念
- 尽早测试
(1)测试人员早期参与软件项目
(2)尽早地开展测试执行工作 - 全面测试
(1)对软件的所有产品进行全面的测试
(2)软件开发及测试人员(有时包括用户)全面地参与到测试工作中 - 全过程测试
(1)测试人员要充分关注开发过程
(2)测试人员要对测试的全过程进行全程的跟踪 - 独立的、迭代的测试
(1)测试活动是独立的
(2)测试活动应该是循环往复、不断地进行