软件测试分类(转)软件测试分类
按照全生命周期的软件测试概念,测试对象应该包括软件设计开发的各个阶段的内容,对于需求和设计阶段的测试以及关于文档的测试将在面向对象与文档测试部分进行描述,这里重点讲述开发阶段的测试和程序测试。
按照开发阶段划分
按照开发阶段划分软件测试可分为:单元测试、集成测试、系统测试、确认测试和验收测试。
l 单元测试。
单元测试又称模块测试,是针对软件设计的最小单位——程序模块进行正确性检验的测试工作。其目的在于检查每个程序单元能否正确实现详细设计说明中的模块功能、性能、接口和设计约束等要求,发现模块内部可能存在的各种错误。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。
l 集成测试。
集成测试也叫做组装测试。通常在单元测试的基础上,将所有的程序模块进行有序的、递增的测试。集成测试是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。
软件集成的过程是一个持续的过程,会形成很多个临时版本,在不断的集成过程中,功能集成的稳定性是真正的挑战。在每个版本提交时,都需要进行冒烟测试,即对程序主要功能进行验证。冒烟测试也叫版本验证测试、提交测试。
l 确认测试。
确认测试是通过检验和提供客观证据,证实软件是否满足特定预期用途的需求。确认测试是检测与证实软件是否满足软件需求说明书中规定的要求。
l 系统测试。
系统测试是为验证和确认系统是否达到其原始目标,而对集成的硬件和软件系统进行的测试。系统测试是在真实或模拟系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等)正确配置、连接,并满足用户需求。
l 验收测试。
按照项目任务书或合同、供需双方约定的验收依据文档进行的对整个系统的测试与评审,决定是否接收或拒收系统。
按照测试实施组织划分
按照测试实施组织划分,软件测试可分为开发方测试、用户测试(β测试)、第三方测试。
l 开发方测试。
通常也叫“验证测试”或“α测试”。开发方通过检测和提供客观证据,证实软件的实现是否满足规定的需求。验证测试是在软件开发环境下,由开发者检测与证实软件的实现是否满足软件设计说明或软件需求说明的要求。主要是指在软件开发完成以后,开发方对要提交的软件进行全面的自我检查与验证,可以和软件的“系统测试”一并进行。
l 用户测试。
在用户的应用环境下,用户通过运行和使用软件,检测与核实软件实现是否符台自己预期的要求。通常情况用户测试不是指用户的“验收测试”,而是指用户的使用性测试,由用户找出软件的应用过程中发现的软件的缺陷与问题,并对使用质量进行评价。
β测试通常被看成是一种“用户测试”。β测试主要是把软件产品有计划地免费分发到目标市场,让用户大量使用,并评价、检查软件。通过用户各种方式的大量使用,来发现软件存在的问题与错误,把信息反馈给开发者修改。β测试中厂商获取的信息,可以有助于软件产品的成功发布。
第三方测试。
介于软件开发方和用户方之间的测试组织的测试。第三方测试也称为独立测试。软件质量工程强调开展独立验证和确认(IV&V)活动。IV&V是由在技术、管理和财务上与开发组织具有规定程度独立的组织执行验证和确认过程。软件第三方测试也就是由在技术、管理和财务上与开发方和用户方相对独立的组织进行的软件测试。一般情况下是在模拟用户真实应用环境下,进行软件确认测试。
按照测试技术划分
按照测试技术划分:白盒测试、黑盒测试、灰盒测试。也可划分为静态测试和动态测试。
静态测试是指不运行程序,通过人工对程序和文档进行分析与检查;静态测试技术又称为静态分析技术,静态测试实际上是对软件中的需求说明书、设计说明书、程序源代码等进行非运行的检查,静态测试包括:走查、富豪执行、需求确认等。动态测试是指通过人工或使用工具运行程序进行检查、分析程序的执行状态和程序的外部表现。我们这里讨论的白盒测试、黑盒测试、灰盒测试,在实现测试方法上既包括了动态测试也包括了静态测试。
白盒测试
通过对程序内部结构的分析、检测来寻找问题。白盒测试可以把程序看成装在一个透明的白盒子里,也就是清楚了解程序结构和处理过程,检查是否所有的结构及路径都是正确的,检查软件内部动作是否按照设计说明的规定正常进行。白盒测试又称结构测试。
l 黑盒测试
通过软件的外部表现来发现其缺陷和错误。黑盒测试法把测试对象看成一个黑盒子,完全不考虑程序内部结构和处理过程。黑盒测试是在程序界面处进行测试,它只是检查样序是否按照需求规格说明书的规定正常实现。
l 灰盒测试
介于白盒测试与黑盒测试之间的测试。灰盒测试关注输出对于输入的正确性;同时也关注内部表现,但这种关注不像白盒测试那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态。
灰盒测试结合了白盒测试和黑盒测试的要素。它考虑了用户端、特定的系统知识和操作环境。它在系统组件的协同性环境中评价应用软件的设计。
软件测试方法和技术的分类与软件开发过程相关联,它贯穿了整个软件生命周期。走查、单元测试、集成测试、系统测试用于整个开发过程中的不同阶段。开发文档和源程序可以应用单元测试应用走查的方法;单元测试可应用白盒测试方法;集成测试应用近似灰盒测试方法:而系统测试和确认测试应用黑盒测试方法。
分享到:
相关推荐
《软件测试分类全面解析》 在信息技术领域,软件测试是保证产品质量的重要环节,它通过系统化的方法检测软件的功能、性能、稳定性以及用户友好性等方面,确保软件产品在发布前达到预期的标准。本资料《软件测试分类...
软件测试是确保软件质量的关键步骤,它通过不同的分类方法来全面检查软件的各个方面。下面将详细阐述软件测试的分类。 首先,按照软件测试的动静态分类: 1. 静态测试:静态测试不涉及程序的实际运行,而是通过...
软件测试分类 软件测试是一种确保软件质量的方法,旨在发现软件中的错误、缺陷和不足,以提高软件的可靠性、稳定性和性能。软件测试可以分为不同的类型,包括黑盒测试、白盒测试、静态测试、动态测试、单元测试、...
总的来说,软件测试分类提供了全面、系统化的测试方法,确保软件质量。理解并熟练应用这些测试技术,能有效提升软件开发过程的可靠性和效率。无论是静态测试还是动态测试,它们都是为了发现和预防软件中的错误,确保...
软件测试分类简介及测试举例 软件测试是复杂的系统工程,需要从不同的角度考虑,进行分类是为了更好地明确测试的过程,了解测试究竟要完成哪些工作,尽量做到全面测试。下面是软件测试的分类简介及测试举例: 1. ...
测试的详细分类 黑盒和白盒测试 静态测试和动态测试 测试不同阶段 测试各种分类间关系
现在一般软件公司编写测试用例大多都用xmind了,趁着有时间整理了一下软件测试的分类以供后续回顾学习,有需要的小伙伴也可以参考下~
#### 三、软件测试分类 - **按阶段划分**: - **单元测试**:针对单个模块或组件进行测试,确保每个模块的功能正确性。 - **集成测试**:将多个已经通过单元测试的模块组合起来进行测试,检查模块间的接口是否...
二、软件测试分类 1. 功能测试:验证软件是否按照需求规格说明书正确执行各项功能。 2. 性能测试:检查软件在不同负载和压力下的响应时间、处理能力、资源消耗等。 3. 安全性测试:评估软件抵抗恶意攻击和数据泄露的...
#### 二、软件测试分类 **2.1 黑盒测试与白盒测试** - **黑盒测试**:仅关注软件的功能性需求,不考虑其内部实现细节。 - **白盒测试**:侧重于程序的内部逻辑和结构,通过深入代码层面来检测问题。 **2.2 静态...
软件测试分类 软件测试可以分为黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试等。其中,黑盒测试是把测试对象看作一个黑盒子,不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,...
适用于软件测试初学人员、以及需要学习该基础的人员
### 软件测试分类详解 #### 一、软件测试分类概述 软件测试是一项重要的质量保证活动,旨在评估软件产品的质量并确保其符合预期的功能和性能要求。根据不同的视角和目的,软件测试可以分为多种类型。本文将详细...
**软件测试分类** 1. **黑盒测试**: - 关注软件输入和输出,不考虑内部结构 2. **白盒测试**: - 通过检查源代码和结构来测试软件 3. **静态测试**: - 不运行软件,仅静态检查代码、界面或文档错误 4. **...
5. **软件测试分类和比较**: - 功能测试:验证软件是否按照需求规格书执行。 - 性能测试:评估软件在特定负载或压力下的表现。 - 安全测试:检查软件的安全性,防止未授权访问或数据泄露。 - 兼容性测试:确保...
三、软件测试分类 1. 按关注点:黑盒测试(关注输入/输出行为)和白盒测试(关注内部结构)。 2. 按是否运行:静态测试(不运行,如代码审查、界面检查、文档验证)和动态测试(运行程序,检查结果)。 3. 按阶段:...
2. **软件测试分类**:主要分为黑盒测试和白盒测试两大类。黑盒测试关注的是软件的功能行为,而不考虑其内部结构;白盒测试则基于代码结构和内部逻辑进行测试。此外,还有单元测试、集成测试、场景测试、系统测试、...