测试模型
软件测试v模型
以"编码"为界,左边是研发线,右边是测试线。
与瀑布模型的优缺点一致。
目的:改进软件开发的效率和效果。
各个阶段:
用户需求:了解需求
需求分析与系统:了解、确定需求的范围,制定测试计划
概要设计 与 详细设计:测试人员不参与
编码:测试人员介入,编写测试用例
单元测试 和 集成测试:
做的是测试的工作,但是参与的角色,为白盒测试工程师或研发人员(传统的测试人员不参与)
(白盒测试————测试人员写代码测研发人员写的代码)
系统测试(核心):
测试人员花费时间最长的阶段
工作:搭建环境、数据准备、测试执行、缺陷管理、测试报告输出/编写
验收测试:
测试人员不测试,此阶段的验收人员-->用户
测试人员的工作:给用户培训软件的使用,并收集用户在使用中的反馈和建议
明确的标注了测试过程中存在的不同类型的测试,
并且清楚的描述了这些测试阶段和开发过程期间各阶段的对应关系。
V模型指出,单元和集成测试应检测程序的执行是否满足软件设计的要求;
系统测试应检测系统功能、性能的 质量特性是否达到系统要求的指标;
验收测试确定软件的实现是否满足用户需要或合同的要求。
局限性:仅仅把测试作为在编码之后的一个阶段,未在需求阶段就进入测试。
软件测试W模型(双V模型)
各个阶段:
用户需求:为验收测试做准备
需求分析与系统:确定需求的范围,制定测试计划,为系统测试做准备
概要设计:为集成测试做准备,测试计划进一步细化
详细设计:为单元测试准备,搭建测试用例的框架
编码:测试人员写测试用例,还要进行单元测试(不需要代码全部写完)————单元测试
集成:集成测试
实施:系统测试
交付:验收测试
W模型增加了软件各开发阶段中应同步进行的验证和确认活动。
W模型,双V模型,分别代表测试与开发过程,图表示出了测试与开发的并行关系。
W模型特点:
测试的对象不仅是程序,需求、设计等同样要测试,测试与开发是同步进行的。
W模型优点:
有利于尽早地全面的发现问题。
例如,需求分析完成后,测试人员就应该参与到对需求的验证和确认活动中,以尽早地找出缺陷所在。
同时,对需求的测试也有利于及时了解项目难度和测试风险,及早制定应对措施,
显著减少总体测试时间,加快项目进度。
局限性:
需求、设计、编码等活动被视为串行的;
测试和开发活动也保持着一种线性的前后关系,上一阶段完全结束,
才可正式开始下一个阶段工作。无法支持敏捷开发模式。
对于当前软件开发复杂多变的情况,W模型并不能解除测试管理面临着困惑。
V/W都不适合敏捷
配置管理和软件测试
什么是配置管理
配置管理:Configuration Management
是通过对在软件生命周期不同的时间点上的软件配置进行标识,并对这些 被标识的软件配置项的更改进行系统控制,从而达到保证软件产品的完整性和可溯性的过程。
软件配置管理的应用
软件开发过程中会产生大量软件产品(包括文档、源代码和数据等),且这些产品之间存在关联关系。同一软件产 品也会发生变更,从而产生许多版本。软件开发小组必须清晰地知道会有哪些产品、这些产品会有哪些不同的形式和版本。开发小组必须清晰地知道如何将产品的变更通知给受影响的小组。如果不能有效地了解软件产品及其变更,开发小组将很难组装这些软件产品,很难得到所需的软件产品。
实施软件配置管理的好处
实施软件配置管理(SCM),至少能给项目团队带来如下好处。
(1)能够对项目中的文档、代码等的变化进行有效管 理。
(2)能够方便地重现某个文件的历史版本。
(3)能够重新编译某个历史版本,使维护工作变得容易。
(4)能够使 异地多团队开发、并行开发成为现实。
(5)从公司级看,实行统一的配置管理流程可提高项目组间人员流动时的工 作效率。
配置管理与软件测试
测试人员应该从配置库取源代码编译后再测试,只有看到新的构建版本不再出现那个Bug,才能把缺陷库中的Bug关闭。