软件测试流程
1.软件生命周期及研发模型
1.1什么是生命周期?
软件开发全部过程、活动和任务的结构框架,是从可行性研究到需求分析、软件
设计、编码、测试、软件发布维护的过程。
1.2软件生命周期的三个时期
软件定义、软件开发、运行维护
1.3软件研发模型
1.3.1大爆炸模型:简单,主要在开发和编写代码,没有测试活动。
1.3.2边写边改模型:来回编写、测试和修复缺陷的过程,适合快速制作的项目。
1.3.3瀑布模型:
瀑布模型非常强调产品的定义
开发或者代码编制阶段只是其中单独的一块
瀑布模型各步骤是分立的\没有交叉
瀑布模型无法回溯
一旦进入某个步骤,就要完成该步骤的任务,然后才能向下继续——无法回溯
每个阶段都要仔细验证,线性过程太理想化,越来越不适合现代软件的开发模式
1.3.4快速原型模型:
克服瀑布模型的缺点,更好地满足用户的需求并减少由于软件需求不明确带来的项目开发风险
适合预先不能确切定义需求的软件系统的开发
不适合大型系统的开发(适合开发小型的、灵活性高的系统)
前提要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新
1.3.5螺旋模型:
开始不必详细定义所有细节
从小开始,定义重要功能,努力实现
接受反馈,进入下一次循环
测试活动贯穿于每个循环
螺旋模型很大程度上是一种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评估
在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失。过多的迭代次数会增加开发成本,延迟提交时间。
1.3.6敏捷开发:
产品经理调研客户需求,协商需求的优先级,进行排序
项目经理接收到需求,分配任务,计划研发:迭代任务2-6周一个周期
迭代周期,每日站会(立会),讲述昨