软件测试基础(一)

一. 测试相关概念

IT:Information Technology,即信息科技和产业的意思。

软件:一系列按照特定顺序组织的计算机数据和指令的集合,程序+数据+文件。

产品:能够供给市场,被人们使用和消费,并能满足人们某种需求的任何东西,包括有形的物品,无形的服务,组织,观念或它们的组合。

项目:指一系列独特的,复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间,预算,资源限定内,依据规范完成。

二. 为什么做软件测试

1. 一个糟糕的测试程序可能导致任务的失败,影响操作的性能和可靠性,导致维护阶段的成本提高;

2. 一个好的测试程序可以降低项目的主要成本;

3. 一个好的测试程序可以极大地帮助你定义需求和设计;

4. 一个好的测试可以迫使你在工作时必须面对和处理问题,使得修改缺陷成本降低;

5. 一个好的测试不能弥补一个糟糕的软件项目,但是的确有助于发现许多问题,并且至少使得你尽早直到你处在问题当中。

三. 软件的生命周期

 

 四. 项目组成员

 

 五. 测试的基本原则

1. 测试是上下文相关的;

2. 穷尽测试是不可能的;

3. 测试尽早介入;

4. 杀虫剂悖论;

5. 缺陷群集性;

6. 测试证明存在缺陷;

7. 无错谬误。

六. 软件测试对象

 

 七. 软件开发模型

1. 研发模型--瀑布型

 

 2. 研发模型--原型

 

 3. 研发模型--敏捷模型

敏捷开发(Agile Development)是一种以人为核心,迭代,循序渐进的开发方法。

 

 4. 研发模型--其他模型

螺旋模型:适合与大型复杂软件系统。

RUP模型(Rational Unified Process):模型过于复杂,难于掌握,耦合度高不适合。

八. 软件测试模型

1. 测试模型--V模型

 

 优点:既包括低层测试又包括了高层测试,低层测试是为了源代码的正确性,高层测试是为了使整个系统满足用户的需求。

局限性:把测试过程作为在需求分析,概要设计,详细设计及编码之后的一个阶段,不能体现“尽早地和不断地进行软件测试”的原则。

 2. 测试模型--W模型

 

 优点

(1)如果测试文档能尽早提交,那么就有了更多的检查和检阅的时间,这些文档还可用于评估开发文档;

(2)测试者可以在项目中尽可能早地面对规格说明书中的挑战;

(3)测试还可以尽可能早地找出缺陷所在,从而帮助改进项目内部的质量。

局限性:无法支持迭代,自发性以及变更调整。

3. 测试模型--H模型

 

 优点

(1)软件测试不仅仅指测试的执行,还包括很多其他活动;

(2)软件测试是一个独立的过程,贯穿产品整个生命周期,与其他流程并发地进行;

(3)软件测试要尽早准备,尽早执行;

(4)软件测试是根据被测物的不同而分层次进行的;

(5)不同层次的测试活动可以是按照某个次序进行的,但也可能是反复的;

(6)软件测试模型是一个独立的流程,贯穿于整个产品周期,与其他流程并发地进行。

4. 测试模型--X模型

 

 5. 测试模型--前置模型

 

 优点

(1)体现开发与测试相结合;

(2)对每一个交付内容进行测试;

(3)在设计阶段进行测试计划和测试设计;

(4)测试和开发结合在一起;

(5)让验收测试和技术测试保持相对独立。

posted @ 2023-02-06 15:38  惟默  阅读(47)  评论(0编辑  收藏  举报