软件测试—概念篇

软件测试—概念篇

什么是软件测试

概念: 验证软件功能是否满足用户的需求

测试与调试的区别:

  • 目的不同:测试的任务是发现程序中的缺陷;调试的任务是定位并且解决程序中的问题。
  • 参与角色不同:测试主要是由测试人员和开发人员来执行,黑盒测试主要由测试人员完成、单元/集成测试主要是由开发人员执行。调试由开发人员完成。
  • 执行阶段不同:测试贯穿整个软件开发生命周期,调试一般在开发阶段。

什么是需求

需求:满足用户期望或正式文档规定的条件和权能,用户需求和软件需求

  • 用户需求:可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品时必须要完成的任务。该需求一般比较简略。

  • 软件需求:或者叫功能需求,该需求会详细描述开发人员必须实现的软件功能。软件需求是测试人员进行测试工作的基本依据。

什么是bug

bug:有规格说明书且正确,程序与规格说明书不匹配的是缺陷,无规格说明书,以用户期望为标准
凡是实现效果和需求不相符的都可以认为是BUG.

什么是测试用例

测试用例:向被测试程序输入的一组集合,包含:测试环境、操作步骤、测试数据、预期结果、前置条件、备注等要素……

开发模型

1.瀑布模型(Waterful Model)

这里写图片描述

这里写图片描述

V模型实质是基于瀑布模型,明确描述了开发与测试不同阶段的对应关系。
单元和集成测试检测程序是否满足软件设计的要求
系统测试检测系统功能、性能是否满足系统要求的指标
验收测试检测软件的实现是否满足用户需求或合同要求

局限性:仅在编码之后进行测试,不能及时发现需求等阶段的bug

2.W模型

这里写图片描述

在V模型的基础上进行改进,在开发阶段的同时同步进行验证和确认活动,二者并行进行。它由两个v字形模型组成,将开发与测试分开。
特点:测试对象除了程序外,还要对需求、设计等进行测试。
优点:有利于尽早全面的发现问题,降低后续测试难度和风险,对已发现的bug及早处理,加快项目进度。
局限性:需求、设计、编码这些都是串行的,前一阶段结束,下一阶段才能开始。无法支持敏捷开发模式。

软件配置(SCM):

配置管理( Configuration Management)是通过对在软件生命周期不同的时间点上的软件配置进行标识,并对这些被标识的软件配置项的更改进行系统控制,从而达到保证软件产品的完整性和可溯性的过程。

实施SCM的好处:

  • 能够对项目中的文档、代码等的变化进行有效管理。
  • 能够方便地重现某个文件的历史版本。
  • 能够重新编译某个历史版本,使维护工作变得容易。
  • 能够使异地多团队开发、并行开发成为现实。
  • 从公司级看,实行统一的配置管理流程可提高项目组间人员流动时的工作效率

测试人员在SCM中起很大作用。
假设开发人员修正了一个Bug,然后找测试人员过去讨论,测试人员在开发人员的机器上重新测试了一下,发现Bug没再出现了,修复了,这时候,如果测试人员把缺陷关闭了,则可能导致缺陷莫名其妙地在用户那边又出现了。其实,原因可能仅仅是开发人员把这个Bug修改的代码没有提交的到配置管理数据库中。但是作为测试人员有没有责任呢然有,因为测试人员也没有按照规范的配置管理流程执行测试,测试人员应该从配置库取源代码编译后再测试,只有看到新的构建版本不再出现那个Bug,才能把缺陷库中的Bug关闭。

来源:是蛋筒啊

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年6月16日
下一篇 2018年6月17日

相关推荐