软件测试基础理论知识(一)

软件测试基本概念

软件测试(英语:Software Testing),描述一种用来促进鉴定 软件的正确性、完整性、安全性和质量的过程。 换句话说, 软件测试是一种实际输出与预期输出之间的审核或者比较过程。 软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量 软件质量,并对其是否能满足设计要求进行评估的过程。 「来自百度百科」

软件测试说白了就是对『软件进行体检』.

了解一下开发中的软件设计模型

  • 瀑布模型
1. 是线性模型的一种,在所有模型中占有重要地位,是所有其他模型的一个基础.
2. 每一个阶段执行一次,按线性顺序进行软件开发.

软件测试基础理论知识(一)_第1张图片

测试阶段在软件实现后,必须在代码完成后留出足够多的时间给测试,否则将导致测试不够充分,很多问题到项目后期才暴露出来

优点:

  1. 开发的各个阶段比较清晰.
  2. 强调早期计划及需求调查。
  3. 适合需求稳定的产品开发

缺点:

  1. 依赖于早期的需求调查,不适应需求的变化。
  2. 单一流程不可逆
  3. 风险往往延至后期才显露,失去及早纠正的机会。
  4. 问题在项目后期才开始暴露.
  5. 前面未发现的错误会传递并扩散到后面的阶段,可能导致项目失败.

因为瀑布模型的缺点,所以要改良一下:

沿用瀑布模型的线性思想,细化了各个阶段,在某些重要关注的阶段之间掺入迭代的思想。每个阶段都可以融入迭代操作.

快速原型模型

  • 在开发真实系统之前,构造一个原型,在该原型的基础上,逐渐完成整个系统的开发工作。
    • 第一步是建造一个快速原型,实现用户与系统的交互,用户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足用户的要求,开发人员可以确定用户的真正需求是什么。
    • 第二步是在第一步的基础上开发出用户满意的软件产品。

软件测试基础理论知识(一)_第2张图片

快速原型模型

软件测试基础理论知识(一)_第3张图片

快速原型模型

优点:

  • 克服瀑布模型的缺点,更好地满足用户的需求并减少由于软件需求不明确带来的项目开发风险。适合预先不能确切定义需求的软件系统的开发。

缺点:

  • 不适合大型系统的开发(适合开发小型的、灵活性高的系统)。前提要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新。

螺旋模型

螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期大致和瀑布模型相符合,螺旋模型沿着螺旋线旋转,即在坐标的4个象限上分别表示了4个方面的活动.

软件测试基础理论知识(一)_第4张图片

快速原型模型

软件测试基础理论知识(一)_第5张图片

螺旋模型

优点:

  • 螺旋模型很大程度上是一种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评估。

缺点:

  • 采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中, 如果未能够及时标识风险,势必造成重大损失。过多的迭代次数会增加开发成本,延迟提交时间。
这种方式了解一下即可, 实际开发中并不常用.

总结:

今天主要介绍了软件开发过程上的常用模型, 主要是为了后期软件测试作准备. 至少作为一个测试人员这些基本的常识要知道.

今天主要说了三种软件开发模型, 分别是:

  1. 瀑布模型
  2. 快速原型模型
  3. 螺旋模型

 

你可能感兴趣的:(软件测试基础理论知识(一))