与开发过程类似,测试过程必须分步进行,后一个步骤在逻辑上是前一个步骤的继续。软件从编码结束到交付到用户使用,需要经过单元测试、组装测试、验收测试和系统测试四个步骤。
一、单元测试
单元测试是软件测试的第一步,针对软件设计的最小单位——程序模块,进行正确性检验的测试工作。通常,单元测试和编码属于软件工程工程的同一个阶段。在编写出源程序代码并通过编译程序的语法检查之后,就可以进行单元测试工作,目的在于发现模块内部可能存在的各种出错。多个模块可以进行平行地独立进行单元测试。
1)、单元测试的内容
(1)、模块接口测试
I、模块的形参和其驱动模块送来的参数的个数、类型、次序是否一致;
II、模块i传送给被调用模块的参数与其装模块的参数的个数、类型和次序是否一致;
III、模块传送给库函数的变量个数、类型次序是否正确;
IV、全局变量的定义和用法在各个模块中时候一致;
V、所使用的外部文件的属性是否正确,打开文件的语句是否正确,缓冲区大小是否与记录长度相匹配,文件结束判断处理是否一致。
(2)、局部数据结构测试
模块内部数据是否完整,内容、形式、相互关系是否有错常常是软件错误的主要来源。
I、错误或不相容的数据说明或使用了尚未初始化的变量;
II、错误的初始值或不正确的缺省值;
III、错误变量名或数据类型不相容;
IV、溢出(上溢或下溢)或地址异常;
V、全局数据对模块i测试的影响。
(3)、重要路径测试
由于通常不能进行穷尽测试,因此,在单元测试期间应选择最有代表性、最可能发现错误的执行路径进行测试。重要路径测试方案应重点测试由于错误计算、不正确的比较或不适当的控制流而造成的错误。常见错误如下:
I、运算的次序错误(误用了运算符的优先级);
II、混合运算对象的类型彼此不相容;
III、变量初始值不正确;
IV、精度不够,或由于精度问题两个量不可能相等时,程序中却期待着相等条件的出现;
V、错误地修改循环变量,错误的或不可能达到的循环终止条件;
VI、“差1”错(多循环1次或少循环1次)
VII、当遇到发散的循环迭代时循环不能制止。
(4)、错误处理测试
好的模块设计应能预见出错的条件,并设置相应的储蓄哦处理。这样,程序一旦发生错误就会按照预定的方法进行处理,保证逻辑上的正确性。这种错误处理应当是模块功能的一部分,也应是测试的内容之一。对错误处理进行测试时应重点考虑下列问题:
I、对可能出现错误的描述是否难以理解;
II、出错的描述不足以对错误定位,或足以确定出错的原因;
III、显示的错误与实际的错误不符;
IV、对错误的条件处理不正确;
V、在对错误进行处理之前,错误条件已经引起系统的干预。
(5)边界测试
边界测试是单元测试中最后的、也肯能是最重要的工作。程序常常在边界上出现错误。
例子:在一段程序内有一个n次循环,当达到第n次循环时就有可能出错。因此,要特别注意数据流、控制流中恰好等于、大于或下于确定的比较值时出错的可能性。要精心设计测试用例对这些地方进行测试。
2)、单元测试的步骤
当每个模块模块的代码编制完成,并经过评审和验证确认没有语法错误后,就可以进行单元测试。单元测试的步骤:
(1)、配置测试环境
模块是软件中的一个单独的编译单位,而不是一个单独的执行单位。因此,测试时要为模块设计两类附加模块——驱动模块和桩模块。构成测试环境。
(2)、编写测试数据
主要采用白盒测试用例,以路径覆盖为最佳测试准则,同时辅助以黑盒测试用例,使之对任何合理的输入和不合理的输入都能鉴别和相应。
(3)、进行多个模块的并行测试
二、集成测试
集成测试的主要目标是发现与接口有关的问题。例如:
穿越模块接口的数据可能丢失;
一个模块可能对另一个模块产生不利影响;
各个功能组合起来并未实现主功能;
全局数据可能有问题等等……
集成测试根据模块组装方式体现两种测试方式:非渐增式测试和渐增式测试。
1、非渐增式测试
非渐增式测试是把已经过测试的所有模块一次性组装起来,然后进行整体测试。对于大的工程,这样难度是很大的,所以使用较少。
2、非渐增式测试
1)、自顶向下集成
这种集成方式是从主控模块开始,沿着控制层次自顶向下进行组装。具体步骤可分为:
I、测试主控制模块
II、根据选定的添加策略每次用一个实际模块代替一个桩模块,再用相应的桩模块代替该实际模块的直接下属模块,与已测试的模块或子系统组装成新的系统。测试新加入模块
III、回归测试。
IV、重复上述I和II,知道所有模块均组装到系统中为止。
自顶向下集成方式的缺点是需要建立桩模块,并存在一个逻辑次序问题。
2)、自底向上集成
三、验收测试
集成测试消除了软件接口的错误,系统已成为完整的软件包。要收测试主要由用户参加测试,检验软件规格说明的技术标准的符合程度,是保证软件质量的最后关键环节。验收测试工作主要包括有效性测试和软件配置复查两方面。
有效性测试在开发环境下运行黑盒测试,验证软件是否满足需求规格说明书类列出的需求。对软件的可移植性、兼容性、出错自动回复、可维护性等进行测试。如果功能和性能与用户要求一致,则通过;如果有差距的话,就提交一份问题报告
软件配置复查保证软件配置的所有成分都齐全,各方面的质量都符合要求,文档内容与程序完全一致,具有软件维护阶段所必需的细节,而且全部文档到已经编号目录。除此职位,还要进行阿尔法测试或者贝塔测试。
四、系统测试
系统测试是将验收测试的软件,作为基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起进行的综合测试。包括恢复测试、安全测试、强度测试三个方面。
分享到:
相关推荐
软件测试步骤,自己做的PPT,请大家指正和批评
软件测试步骤归类.pdf
计算机软件测试规范 软件测试模板 软件测试步骤
软件测试的基本步骤:测试准备-测试计划-测试需求-测试用例-测试执行-测试缺陷管理-测试报告总结
软件测试步骤与流程软件测试一、新产品或工程管理流程1、需求调研在软件需求分析阶段,测试人员从软件生命周期的需求阶段就开始介入在需求阶段的测试人员参与软件需求调研,以测试角度分析需求的可测性,可构思将来...
软件测试的 步骤 整体流程 单元测试 集成测试 确认测试 系统测试 软件测试的 步骤 整体流程 单元测试 集成测试 确认测试 系统测试 软件测试的 步骤 整体流程 单元测试 集成测试 确认测试 系统测试 软件测试的 步骤 ...
涵盖软件测试各个阶段流程图,以及软件测试总流程图。
软件测试计划,其中我总结了主要的一些测试计划步骤!
1.在软件测试阶段,测试步骤按次序可以划分为以下几步:( A ) A、单元测试、集成测试、系统测试、验收测试 B、验收测试、单元测试、系统测试、集成测试 C、单元测试、集成测试、验收测试、系统测试 D、系统测试、...
软件测试的软件测试的测试计划详细步骤及内容总结测试计划详细步骤软件测试的测试计划详细步骤及内容总结及内容总结软件测试的测软件测试的测试计划详细步骤及内容总结试计划详细步骤及内容总软件测试的测试计划详细...
软件质量控制方法、软件测试原则、软件测试步骤与软件开发个阶段的关系等
为大家各家了解软件测试的测试计划软件测试的测试计划详细步骤及内容软件测试的测试计划详细步骤及内容软件测试的测试计划详细步骤及内容软件测试的测试计划详细步骤及内容软件测试的测试计划详细步骤及内容
本文面向软件测试新手,从测试前的准备工作、测试需求收集、测试用例设计、测试用例执行、测试结果分析几个方面给出建议和方法。鉴于国内的软件开发、测试不规范的现状,本文为软件测试新手提供了若干个软件测试的...
软件测试的11个步骤软件测试的11个步骤
软件测试是软件开发过程中的一个非常重要的步骤,可以帮助我们发现软件中的缺陷和错误。软件测试可以分为功能测试、性能测试、安全测试、配置测试、安装测试、卸载测试等。 在软件测试中,测试用例的设计是非常重要...
软件测试是软件开发过程中的一个重要步骤,它确保软件产品的质量和可靠性。本文档旨在提供一个软件测试规范文档,用于指导软件测试工作。 概述 软件测试是软件开发过程中的一个重要步骤,它旨在确保软件产品的质量...
希赛软件测试工程师教程-4.6.2 软件测试的步骤
自动化软件测试的步骤软件测试步骤一:改进软件测试过程如果你负责提高一个商业交易操作的效率,首先,你应该确认已经很好的定义了这个操作的具体过程。然后,在你投入时间和金钱采用计算机提供一套自动化的商业交易...
测试数据的准备也是软件测试的一个重要步骤。测试数据是指在软件测试中使用的一组输入数据。测试数据的准备需要考虑到软件的需求和目标,以确保测试的结果是可靠的。 测试执行是软件测试的最后一步。在测试执行中,...
3. 软件测试的步骤:软件测试的步骤包括测试计划、测试设计、测试执行、测试报告等。测试计划是指制定测试的目标和范围,测试设计是指设计测试用例,测试执行是指执行测试,测试报告是指编写测试报告。 4. 软件测试...