软件测试04:软件测试流程和软件测试过程
软件测试流程
- 软件测试流程:获取测试需求->编写测试计划->制造测试方案->开发与设计测试用例->执行测试->提交缺陷报告->测试分析与评审->提交测试总结->准备下一版本测试
软件测试过程
-
软件测试过程模型
如果软件开发过程一样,软件测试也有自己的过程模型。软件测试过程是一种抽象的模型,用于定义软件测试的流程和方法。
测试过程的质量将直接影响测试结果的准确性和有效性(公私分明,仔细认真)。软件测试过程和软件开发过程一样,都遵循软件工程原理,遵循管理学原理
一个标准的软件测试过程中,应当包含但不仅限包含以下测试活动
需求分析、测试计划、测试设计、测试执行、测试总结......
-
V模型:
- 揭示了开发过程与测试过程中各阶段的对应关系
- 缺点与不足
- V模型仅仅把测试过程作为在需求分析、系统设计及编码之后的一阶段,忽视了测试对需求分析、系统设计的验证;
- 需求的满足情况一直到后期的验收测试才能被验证;
- 没有体现出"尽早地和不断地进行软件测试"的原则
-
W模型:
- 由两个V字模型组成,分别代表测试与开发过程,明确表示出了测试与开发的并行关系。
- 优点:
- 测试的活动与软件开发同步进行
- 测试对象不仅仅程序,包括需求和设计
- 尽早发现软件缺陷可降低软件开发的成本
- 局限性:
- 在W模型中,需求、设计、编码等活动被视为串行的,这样就无法支持灵活的迭代
-
H模型:
- H模型将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备活动和测试执行活动清晰的体现出来
- H模型揭示了一个原理:软件测试是一个独立的流程!
- H模型指出软件测试要尽早准备,尽早执行;只要某个测试达到准备就绪点,测试执行活动就可以开展,并且不同的测试活动可按照某个次序先后进行,也可以反复进行。
-
X模型:
-
X模型也是对V模型的改进,X模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序
-
X模型还定位了探索性测试,这是不进行事先计划的特殊模型的测试,这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误。
![](https://img2023.cnblogs.com/blog/2779111/202305/2779111-20230522153528541-90408429.png)
-
测试岗位独立性由高到低排序:
- 专门的测试外包公司的岗位
- 企业内部的独立于研发部门的测试岗位
- 研发团队内部的测试岗位
- 开发人员自己测试
-
-
软件测试过程理念
- 尽早测试
- 测试人员早起参与软件项目
- 尽早的开展测试执行工作
- 全面测试
- 对软件的所有产品进行全面的测试
- 软件开发及测试人员(有时包含用户)全面的参与到测试工作中
- 全过程测试
- 测试人员要充分关注开发过程
- 测试人员要对测试的全过程进行全程的跟踪
- 独立的、迭代的测试
- 测试活动是独立的
- 测试活动应该是循环往复、不断地进行
- 尽早测试