在进行软件测试的学习之前,我们要了解软件测试一些基本概念. 这些基本概念将帮助我们更加明确工作的目标以及软件测试到底要做什么.
软件测试的基本概念有3个,分别是需求,测试用例和BUG.
这里的需求还可以分为 用户需求和软件需求,用户需求: 简单理解为甲方提出的需求. 软件需求: 开发人员要实现的软件功能. 软件也会作为开发和测试的依据.
一般来说 用户需求不能直接作为软件需求. 我们要对用户需求进行分析,这里的分析可能是从技术上分析(看技术是否可行). 从市场上分析(市场需求量),从成本上分析(成本与收益占比).
测试用例意义就是:测什么,怎么测. 明确出要测试的要素,测试用例的要素包括标题,测试环境,操作步骤,测试数据和预期结果这五大要素.
与产品规格说明书(需求文档)不符就算的上是BUG
主要有以下几点:
开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架
软件/软件开发 的生命周期一般分为6个阶段:
需求分析->计划->设计->编码->测试->运行维护
软件测试贯穿软件的整个生命周期
软件测试分为以下几个阶段: 需求分析->测试计划->测试设计与开发->测试执行->测试评估
项目测试完成之后,需要进行项目上线.项目上线之后,测试人员也需要及时关注产品是否出现了问题.
如果出现了问题:
瀑布模型在软件工程中占有重要地位,是所有其他模型的基础框架。瀑布模型的每一个阶段都只执行一次,因此是线性顺序进行的软件开发模式。
瀑布模型的缺点:
瀑布模型的适用场景: 需求固定的小项目
螺旋模型流程图:
上面这张图不太好看,接下来我们用瀑布模型的方式来理解这张图.
看这张图:
螺旋模型与瀑布模型相比增加了 风险分析和原型. 在需求分析,计划和设计之后要进行风险分析,每次风险分析之后就会得到一个新的原型.而在经过设计之后的风险分析之后就会得到一个可执行原型.
螺旋模型的特点: 增加了 风险分析和原型
螺旋模型的缺点:
螺旋模型的适用场景: 规模庞大,复杂度高,风险大的项目
增量模型流程图:
增量模型把一个大的需求分成了一个个可独立开发上线的功能.
例如一个项目里面要实现很多功能,可以先开发里面的一部分功能,开发完成之后就可以先进行上线,等其它也开发完成之后,再去上线其它功能. 这就是增量模型的流程
迭代模型就是先完成基本的功能,然后在根据需求不断地取改善优化这些基本的功能
敏捷开发有很多种方式,其中scrum是比较流行的一种。
scrum模型中有三个角色: 产品经理,项目经理和研发团队.
五个重要会议:发布计划会议,迭代计划会议,每日例会,演示会议和回顾会议
敏捷模型的特点:1. 轻流程 2. 轻文档 3. 重目标 4. 重产出
以上都是开发模型,测试模型有V模型和W模型
V模型特点: 1.测试过程中存在不同类型的测试 2.测试阶段的参考标准以前面对应阶段为准
缺点: 测试后置(与前面相同)
W模型也称"双V模型"
W模型增加了软件各开发阶段中应同步进行的验证和确认活动。
W模型特点:测试的对象不仅是程序,需求、设计等同样要测试,测试与开发是同步进行的
W模型优点:1.有利于尽早地全面的发现问题。2. 对需求的测试也有利于及时了解项目难度和测试风险,及早制定应对措施,显著减少总体测试时间,加快项目进度。
W模型的缺点:1. W模型重流程,不适应与敏捷模型. 2.测试和开发活动也保持着一种线性的前后关系,前一项工作完成才能开展后一项工作
本文主要讲解了软件测试的三个基本概念,开发模型和测试模型的特点,缺点和适用场景. 概念较多,看起来也很枯燥乏味,但是掌握基本概念才能更好地学习软件测试.
感谢你的观看!希望这篇文章能帮到你!
专栏:《软件测试》在不断更新中,欢迎订阅!
“愿与君共勉,携手共进!”