一种基于测试框架的软件测试方法

文档序号:6601709阅读:284来源:国知局
专利名称:一种基于测试框架的软件测试方法
技术领域
本发明涉及计算机软件技术,特别涉及到软件测试的方法,具体涉及到基于测试 框架的软件测试方法。
背景技术
软件测试是提高软件可靠性、保证软件质量的重要手段,软件测试活动已经融入 软件全生命周期的各个阶段中,软件测试采用的各类技术方法以及测试工具已经日趋成 熟,相关的标准、体系也在不断完善,软件测试正在朝着规范化不断发展。软件测试是一项资源消耗很大的活动,测试质量受资源限制现象非常明显。如何 在有限资源条件及保证质量的前提下提高软件测试的效率是亟待解决的问题。目前软件测 试领域的研究尚处各自为政状态,还没有形成一个完整的技术体系,导致各类从事软件测 试工作的人员在测试中缺乏系统化的考虑,经常忽略或遗忘一些重要环节或者针对遇到的 问题无法找到合适的解决方案。另外,具体人员在具体测试过程中的一些好方法或成功经 验以及发现的软件缺陷在其他项目中都无法得到借鉴,致使软件测试的效率很低,而且无 法保证测试质量。

发明内容
本发明的目的在于提供一种基于测试框架的软件测试方法,该测试方法可以通过 复用解决同类产品软件的测试问题。为了实现上述目的本发明采用的技术方案如下本发明的基于测试框架的软件测试方法,包含以下步骤Sll 构建某一系列产品的基础测试框架;S12 在具体软件的测试过程中对基础测试框架进行实例化,得到测试方案;S13 按照所述的测试方案执行测试;S14 根据本次测试过程与结果对所述的基础测试框架进行完善;S15 下次测试同一系列的产品时重复S12至S14步。步骤Sll中所述的基础测试框架的构建是本发明的软件测试方法的核心部分,包 括以下步骤S21 构建测试过程视图所述的测试过程视图表述测试的具体执行活动组成及所述执行活动的具体内容和执行顺序,其根据测试过程中不同的功能阶段构建;优选的,所述的测试过程视图按照如下方法构建所述的执行活动组成按照以下四个阶段构建制定测试需求、进行测试设计、运行测试、测试结果分析,四个阶段的执行顺 序按照依次执行构建,四个阶段的具体内容构建如下在所述的制定测试需求阶段的具体 内容为生成被测软件模型、交联环境模型,在所述的测试设计阶段的具体内容为建立策略 模型,根据所述的被测软件模型生成测试空间模型,根据所述的交联环境模型生成测试环境模型,在所述的运行测试阶段的具体内容为根据所述的策略模型和测试空间模型生成测 试用例,根据所述的测试环境模型生成执行系统,并利用生成的测试用例和执行系统来运 行测试,所述的测试结果分析阶段的具体内容为生成缺陷模型。S22:构建测试组件视图
所述测试组件视图表述所述的基础测试框架对所述测试方案内容的组件划分,以 及所述组件之间的各种关系;所述的测试组件视图根据所述的执行活动组成从以下五个方面构建根据参与各 执行活动的测试人员构建测试人员组件、根据各执行活动中用到的测试工具构建测试工具 组件、根据各执行活动中生成的测试模型及测试文档构建测试模型组件及测试文档组件, 根据各执行活动动态流程构建测试执行体组件;所述各组件之间的关系构建如下测试人员完成各类测试文档的编写,同时要构 建测试执行体和使用测试工具;测试模型体现在测试文档之中,并被实例化成为相应测试 执行体,利用测试工具构建相应测试模型;测试工具产生出相应测试执行体;测试结果数 据体现在测试文档中;S33 分别构建测试测试人员视图、测试工具视图、测试文档视图所述的测试测试人员视图表述所述测试方案中涉及到的测试角色及所述角色的 具体工作和各角色的组织管理关系,根据所述的测试人员组件和所述的各执行活动之间的 关系构建;所述的测试工具视图表述测试过程中要用到的测试工具、所述测试工具的作用、 使用时间以及使用方法,根据所述的执行体组件、测试模型组件构建;所述的测试文档视图表述测试过程中要完成的文档种类、所述文档产生的时间以 及格式,根据所述的执行活动组成和执行体组件构建。优选的,根据所述的测试过程视图的四阶段的构建方法,所述的测试模型组件按 照以下组成构建需求模型、设计模型、分析模型,在所述的需求模型下构建被测软件模型、 交联环境模型,在所述的设计模型下构建测试空间模型、测试策略模型、执行系统模型。优选的。根据所述的测试过程视图的四阶段的构建方法,所述的测试执行体组件 按照以下组成构建测试用例、测试执行系统、仿真模型、测试结果数据;优选的,根据所述的测试过程视图的四阶段的构建方法,所述的测试人员组件按 照以下组成构建需求建模人员、测试设计人员、测试执行人员、测试分析人员。优选的,根据所述的测试过程视图的四阶段的构建方法,所述的测试文档组件按 照以下组成构建测试计划、测试需求规格说明、测试设计规格说明、测试用例规格说明、测 试执行规格说明、测试日志、软件问题报告和测试总结报告。更优选的,根据所述的测试过 程视图的四阶段的构建方法及所述的测试文档组件构建所述的测试文档视图如下构建在测试策划阶段生成的测试计划和测试需求规格说明,所述的测试计划记录 被测软件以及主要测试目标,并确定人员和时间,所述的测试需求规格说明,描述制定测试 需求阶段的测试需求模型,详细描述测试对象;构建在测试设计阶段生成的测试设计规格说明和测试用例规格说明及测试执行 规格说明,所述的测试设计规格说明描述测试设计阶段的设计模型,所述的测试用例规格 说明,描述详细的测试用例,所述的测试执行规格说明用于指定执行一个测试用例的步骤;构建测试执行阶段生成的测试日至和软件问题报告,所述的测试日志记录测试执 行规格说明的执行情况,所述的软件问题报告,描述测试过程中发现的软件问题及软件故 障模型;构建测试分析阶段生成的测试总结报告,报告测试的完成情况。优选的,所述的测试工具组件按照以下组成构建测试用例建模工具、测试环境建 模工具、测试分析建模工具。更优选的,根据所述的测试过程视图的四阶段的构建方法及测 试工具组件构建所述的测试工具视图如下在所述的测试设计阶段,使用所述测试用例建 模工具从所述策略模型和测试空间模型生成测试用例,并使用所述的测试环境建模工具生 成仿真模型,在测试结果分析阶段,使用所述的测试分析建模工具对测试结果数据进行分 析,生成缺陷模型。本发明具有下述有益效果本发明的基于测试框架的软件测试方法,首先明确提出了关于测试框架的概念, 将框架理论引入软件测试,很好的利用了框架概念本身具备的通用性和可适配性两大优 势。本发明的软件测试方法中引入的基础框架具有良好的通用性,可以满足一系列产品软 件的测试基本要求,同时测试框架具有适配性,可以根据被测试软件的特点进行灵活的配 置,在测试过程中极大的提高了测试效率与测试质量。


图1基础测试框架的构造;图2测试过程视图;图3测试组件视图;图4测试工具视图;图5测试文档视图;图6测试框架的抽象度与易用性关系图;图7基于测试框架的软件测试过程。
具体实施例方式下面结合具体实施例和附图对本发明的方法进一步进行说明。基础测试框架是本方法的核心部件,测试框架的提出是为了提供一种描述形式, 可以有效的表述能够解决一类测试问题的测试解决方案。基础测试框架一般针对具有相 似特征的一系列产品软件,例如产品线软件等,本发明的方法中构建基础测试框架,通过泛 化软件测试的共性问题,得到测试基础框架的体系结构,参见附图1,即从测试组件、测试过 程、测试人员、测试工具和测试文档等五个方面进行抽象,得到“五视图”表示的测试基础框 架体系结构。所谓的测试框架体系结构就是测试框架对测试解决方案具体表述的基本组织形式,包括测试框架的组件以及组件之间的关系。测试框架中包括各种类型的组件,组件之间 的关系也有静态的结构关系和动态的执行关系等多种类型,对于测试框架体系结构的描述 不能从单一方面完成,必须对体系结构中的组件和组件关系进行某种方式的划分,然后分别对不同方面进行描述。得到一个基础测试框架的体系结构后,要进一步对测试框架内的每一个视图进行 完善,即对测试框架进行设计,具体如下测试过程视图是对解决方案的执行过程的描述。过程视图应该表述出测试有哪些 具体活动组成,这些执行活动的具体内容是什么以及这些活动的执行顺序是怎样的等等。 参见附图2,本发明的方法中基础测试框架的测试过程视图按照如下方法构建所述的执 行活动组成按照以下四个阶段构建制定测试需求、进行测试设计、运行测试、测试结果分 析,四个阶段的执行顺序按照依次执行构建,四个阶段的具体内容构建如下在所述的制定 测试需求阶段的具体内容为生成被测软件模型、交联环境模型,在所述的测试设计阶段的 具体内容为建立策略模型,根据所述的被测软件模型生成测试空间模型,根据所述的交联 环境模型生成测试环境模型,在所述的运行测试阶段的具体内容为根据所述的策略模型和 测试空间模型生成测试用例,根据所述的测试环境模型生成执行系统,并利用生成的测试 用例和执行系统来运行测试,所述的测试结果分析阶段的具体内容为生成缺陷模型。测试组件视图是对体系结构划分的组件以及组件之间的静态结 构的描述。组件视 图是测试框架体系结构的基本视图,它应该表述出测试框架对测试解决方案内容的组件划 分,以及这些组件之间的各种关系。组件视图应该利用面向对象的思想进行构造,这样有利 于框架体系结构的复用和扩展。参见附图3,所述测试组件视图根据所述的执行活动组成 从以下四个方面构建根据参 与各执行活动的测试人员构建测试人员组件、根据各执行活 动中用到的测试工具构建测试工具组件、根据各执行活动中生成的测试模型及测试文档构 建测试模 型组件及测试文档组件,根据各执行活动动态流程构建测试执行体组件;各组件 之间的关系构建如下测试人员完成各类测试文档的编写,同时要构建测试执行体和使用 测试工具;测试模型体现在测试文档之中,同时也可以被实例化成为测试执行体,可以利用 测试工具构建测试模型;测试工具可以产生出测试执行体;测试结果数据体现在测试文档 中;根据过程视图的四阶段的构建方法,所述各组件还构建有具体的内容所述的测试人 员组件按照以下组成构建需求建模人员、测试设计人员、测试执行人员、测试分析人员,所 述的测试执行体组件按照以下组成构建测试用例、测试执行系统、仿真模型、测试结果数 据,所述的测试模型组件按照以下组成构建需求模型、设计模型、分析模型,在所述的需求 模型下构建被测软件模型、交联环境模型,在所述的设计模型下构建测试空间模型、测试策 略模型、执行系统模型,所述的测试文档组件按照以下组成构建测试计划、测试需求规格 说明、测试设计规格说明、测试用例规格说明、测试执行规格说明、测试日志、软件问题报告 和测试总结报告,所述的测试工具组件按照以下组成构建测试用例建模工具、测试环境建 模工具、测试分析建模工具。测试测试人员视图是对解决方案中人员组织的描述。测试人员视图应该表述出 测试方案中涉及到的测试角色、这些角色的具体工作以及这些人员是以怎样的组织进行管 理。根据所述的测试过程视图的四阶段的构建方法及所述的测试组件视图构建所述的测试 测试人员视图如下所述的需求建模人员包括建模人员和编档人员,并在建模顾问的领导 下负责制定测试需求,所述的测试设计人员包括用例设计人员、环境搭建人员、测试调试人 员,并在设计顾问的领导下负责进行测试设计,所述的测试执行人员包括测试执行人员、测 试记录人员,并在执行顾问的领导下负责执行测试,所述的测试分析人员包括结果分析人员和故障建模人员,并在分析顾问的领导下负责测试结果分析。为了更好的管理测试过程, 在所述的测试人员视图中构建组长身份,负责领导所述的需求建模人员、测试设计人员、测 试执行人员、测试分析人员的工作。测试工具视图是对测试解决方案中用到的各种软件或硬件工具的描述。软件测试 活动中测试工具发挥着很大的作用,尤其是自动化测试更是离不开工具的支持。测试工具 视图应该表述出测试过程中要用到哪些测试工具、这些测试工具的作用是什么、工具何时 使用以及如何使用等相关问题。参见附图4,根据所述的测试过程视图的四阶段的构建方法 及测试工具组件构建所述的测试工具视图如下在所述的测试设计阶段,使用所述测试用 例建模工具从所述策略模型和测试空间模型生成测试用例,并使用所述的测试环境建模工 具生成仿真模型,在测试结果分析阶段,使用所述的测试分析建模工具对测试结果数据进 行分析,生成缺陷模型。测试文档视图是对测试过程中要完成的测试文档的描述。文档视图应该表述出测 试过程中要完成哪些文档、文档产生的时机以及文档的格式等相关问题。参见附图5,根据 所述的测试过程视图的四阶段的构建方法及所述的测试文档组件构建所述的测试文档视 图如下构建在测试策划阶段生成的测试计划和测试需求规格说明,所述的测试计划记录 被测软件以及主要测试目标,并确定人员和时间,所述的测试需求规格说明,描述制定测试 需求阶段的测试需求模型,详细描述测试对象;构建在测试设计阶段生成的测试设计规格说明和测试用例规格说明及测试执行 规格说明,所述的测试设计规格说明描述测试设计阶段的设计模型,所述的测试用例规格 说明,描述详细的测试用例,所述的测试执行规格说明用于指定执行一个测试用例的步 骤;构建测试执行阶段生成的测试日至和软件问题报告,所述的测试日志记录测试执 行规格说明的执行情况,所述的软件问题报告,描述测试过程中发现的软件问题及软件故 障模型;构建测试分析阶段生成的测试总结报告,报告测试的完成情况。至此,完成了整个基础测试框架的构架,为了更好的完成测试任务,需要对构建的 基础测试框架进行检验,通常采用专家评审的方式。专家根据以下原则对测试框架进行检 查(1)提供准确而完整的功能测试框架首先要准确、完整地描述整个测试解决方案,对解决方案的相关知识进 行深入的理解并且能够合理的设计测试框架的体系结构。(2)实现合理而适度的易用性易用性主要用来衡量测试框架在使用中满足需要的能力,在设计过程中它主要考 虑两个方面测试框架的普适性,即能够在多大范围内得到复用。测试框架的首要特征就是复 用性,能够解决的测试问题域的大小是衡量一个测试框架优劣的主要方面。测试框架的普 适性与测试问题域的抽象程度成反比,即抽象程度越高,测试框架的普适性越好。普适性与 抽象度之间的关系参照图6。
测试框架的可操作性,即是否能够有效地针对具体的测试领域进行具有专门性的 测试。测试框架既然是一个“半成品”那么在实际使用中就需要根据被测试软件的特点进 行“再加工”,即测试框架的实例化。可操作性表示的就是对测试框架进行实例化过程的难 易程度。一般来说,测试框架的抽象程度越高,实例化过程就越复杂。为了满足可扩展性和可维护性的基本要求,基础测试框架的体系结构尽量采用组 件化和模块化设计。基础测试框架是针对一系列产品软件的“半成品”,其中将许多测试的 知识进行了分类整理,即可以提高测试质量,又可以提高软件测试的效率。经过检验的基础测试框架是针对某一系列软件的抽象解决方案,在具体软件的测 试过程中,需要根据测试目标对基础测试框架进行实例化,构建出具体的测试方案。测试框架的实例化是将框架应用到实际软件测试的过程,实质上也是对测试框架 的细节层中描述的组件属性进行具体的赋值过程,例如多数测试框架体系结构中都有一个 测试用例组件,在结构层中只对测试用例的生成策略、描述形式以及运行机制进行了描述, 而在实例化过程中则要依照结构层定义产生出一个个具体的可以运行的测试用例,将测试 用例组件实现为一个测试用例集合。测试框架的实例化是测试框架使用过程中必须要做的 操作。参见附图7,本环节中具体分为以下步骤1)确定测试目标在使用基础框架之前,必须首先明确本次测试的测试目标,确定测试目标的依据 一般是软件测试合同或者软件测试的相关协议。测试目标要确定测试的级别、测试类型以 及测试的验证标准等内容。2)学习测试基础框架在测试之前,对要使用的针对某一系列软件的测试基础框架进行学习与了解。这 个过程主要是对基础框架的适用范围、体系结构、使用原则以及适配规则等进行掌握,同时 需要对基础测试框架中的各个组件进行了解。3)测试框架的实例化测试框架的实例化,实例化的过程就是将基础测试框架中的各个组件细节层中的 属性赋予具体的值,也就是按照测试解决方案的要求进行测试框架的细化。泛化后的解决 方案中应该明确具体的测试过程、测试工具、测试文档以及测试方法等。4)执行软件测试,必要时修改测试方案在制定好的测试方案指导下进行测试,并进行测试结果的记录。在测试过程中如 果发现测试方案不能满足测试的要求,那么就需要对测试方案进行修改以适应测试要求。5)分析测试结果,扩展基础测试框架测试结束后,需要对测试结果进行分析,并提出对本系列软件的基础测试框架的 改进或补充,然后进行基础测试框架的扩展。测试框架的扩展一般包括识别框架可扩展点和进行更改两个步骤识别扩展点就是要明确测试框架中的哪些部分是允许修改和扩展的,这些内容一 般在框架的基本原则中予以说明。一般来说测试框架体系结构中的组件以及组件之间的协 作关系都是可以进行扩展的部分。扩展过程是在不违反测试基本原则的基础上进行的,也就是说框架的扩展不能改 变测试框架的测试域和测试方法的基本原理,扩展所做的只是实现了测试框架原则层的另一种实例化方式。通过每一次具体软件测试之后的扩展,可以有效的对测试基础框架进行补充与完善,继而在不断提高测试质量的同时也不断提高软件测试的效率。测试框架好像一个模板,规定了一种解决方案应该具有的内容以及内容的表达形 式,同时这种分层表示的方式需要对测试解决方案进行不同层次的抽象,这为方案的复用 和扩展提供了理想的机制保证。测试框架是一组相互协作的组件的集合,能够实现一个或多个测试域中的一系列 问题的解决方案。本发明,通过建立、学习和使用测试框架,建立软件测试方案,同时通过框 架的复用,解决同类产品软件的测试问题。本发明是在一种全新的软件测试模型基础上提 出了测试框架的概念,并据此建立了完整的测试框架理论,可以有效的分析软件测试目标, 建立软件测试解决方案。
权利要求
一种基于测试框架的软件测试方法,其特征在于包含以下步骤S11构建某一系列产品的基础测试框架;S12在具体软件的测试过程中对基础测试框架进行实例化,得到测试方案;S13按照所述的测试方案执行测试;S14根据本次测试过程与结果对所述的基础测试框架进行完善;S15下次测试同一系列的产品时重复S12至S14步。
2.根据权利要求1所述的基于测试框架的软件测试方法,其特征在于步骤S11中所 述的基础测试框架的构建,包括以下步骤521构建测试过程视图所述的测试过程视图表述测试的具体执行活动组成及所述执行活动的具体内容和执 行顺序,其根据测试过程中不同的功能阶段构建;522构建测试组件视图所述测试组件视图表述所述的基础测试框架对所述测试方案内容的组件划分,以及所 述组件之间的各种关系;所述的测试组件视图根据所述的执行活动组成从以下五个方面构建根据参与各执 行活动的测试人员构建测试人员组件、根据各执行活动中用到的测试工具构建测试工具组 件、根据各执行活动中生成的测试模型及测试文档构建测试模型组件及测试文档组件,根 据各执行活动动态流程构建测试执行体组件;所述各组件之间的关系构建如下测试人员完成各类测试文档的编写,同时要构建测 试执行体和使用测试工具;测试模型体现在测试文档之中,并被实例化成为相应测试执行 体,利用测试工具构建相应测试模型;测试工具产生出相应测试执行体;测试结果数据体 现在测试文档中;S33 分别构建测试测试人员视图、测试工具视图、测试文档视图所述的测试测试人员视图表述所述测试方案中涉及到的测试角色及所述角色的具体 工作和各角色的组织管理关系,根据所述的测试人员组件和所述的各执行活动之间的关系 构建;所述的测试工具视图表述测试过程中要用到的测试工具、所述测试工具的作用、使用 时间以及使用方法,根据所述的执行体组件、测试模型组件构建;所述的测试文档视图表述测试过程中要完成的文档种类、所述文档产生的时间以及格 式,根据所述的执行活动组成和执行体组件构建。
3.根据权利要求2所述的基于测试框架的软件测试方法,其特征在于所述的测试过 程视图按照如下方法构建所述的执行活动组成按照以下四个阶段构建制定测试需求、 进行测试设计、运行测试、测试结果分析,四个阶段的执行顺序按照依次执行构建,四个阶 段的具体内容构建如下在所述的制定测试需求阶段的具体内容为生成被测软件模型、交 联环境模型,在所述的测试设计阶段的具体内容为建立策略模型,根据所述的被测软件模 型生成测试空间模型,根据所述的交联环境模型生成测试环境模型,在所述的运行测试阶 段的具体内容为根据所述的策略模型和测试空间模型生成测试用例,根据所述的测试环境 模型生成执行系统,并利用生成的测试用例和执行系统来运行测试,所述的测试结果分析 阶段的具体内容为生成缺陷模型。
4.根据权利要求3所述的基于测试框架的软件测试方法,其特征在于根据所述的测 试过程视图的四阶段的构建方法,所述的测试模型组件按照以下组成构建需求模型、设计 模型、分析模型,在所述的需求模型下构建被测软件模型、交联环境模型,在所述的设计模 型下构建测试空间模型、测试策略模型、执行系统模型。
5.根据权利要求3所述的基于测试框架的软件测试方法,其特征在于根据所述的测 试过程视图的四阶段的构建方法,所述的测试执行体组件按照以下组成构建测试用例、测 试执行系统、仿真模型、测试结果数据;
6.根据权利要求3所述的基于测试框架的软件测试方法,其特征在于根据所述的测 试过程视图的四阶段的构建方法,所述的测试人员组件按照以下组成构建需求建模人员、 测试设计人员、测试执行人员、测试分析人员。
7.根据权利要求3所述的基于测试框架的软件测试方法,其特征在于根据所述的测 试过程视图的四阶段的构建方法,所述的测试文档组件按照以下组成构建测试计划、测试 需求规格说明、测试设计规格说明、测试用例规格说明、测试执行规格说明、测试日志、软件 问题报告和测试总结报告。
8.根据权利要求7所述的基于测试框架的软件测试方法,其特征在于根据所述的测 试过程视图的四阶段的构建方法及所述的测试文档组件构建所述的测试文档视图如下构建在测试策划阶段生成的测试计划和测试需求规格说明,所述的测试计划记录被测 软件以及主要测试目标,并确定人员和时间,所述的测试需求规格说明,描述制定测试需求 阶段的测试需求模型,详细描述测试对象;构建在测试设计阶段生成的测试设计规格说明和测试用例规格说明及测试执行规格 说明,所述的测试设计规格说明描述测试设计阶段的设计模型,所述的测试用例规格说明, 描述详细的测试用例,所述的测试执行规格说明用于指定执行一个测试用例的步骤;构建测试执行阶段生成的测试日至和软件问题报告,所述的测试日志记录测试执行规 格说明的执行情况,所述的软件问题报告,描述测试过程中发现的软件问题及软件故障模 型;构建测试分析阶段生成的测试总结报告,报告测试的完成情况。
9.根据权利要求3所述的基于测试框架的软件测试方法,其特征在于所述的测试工 具组件按照以下组成构建测试用例建模工具、测试环境建模工具、测试分析建模工具。
10.根据权利要求9所述的基于测试框架的软件测试方法,其特征在于根据所述的 测试过程视图的四阶段的构建方法及测试工具组件构建所述的测试工具视图如下在所述 的测试设计阶段,使用所述测试用例建模工具从所述策略模型和测试空间模型生成测试用 例,并使用所述的测试环境建模工具生成仿真模型,在测试结果分析阶段,使用所述的测试 分析建模工具对测试结果数据进行分析,生成缺陷模型。
全文摘要
本发明公开了基于测试框架的软件测试方法,属于软件测试领域。该方法通过针对同一系列软件构建一个基础测试框架,完成对同一些列软件的测试问题,通过测试过程中对框架的实例化及框架的复用解决了软件测试领域中目前存在的测试质量受资源限制现象明显、测试的效率很低、无法保证测试质量的问题。本发明的基础测试框架从五个方面构建测试过程、测试人员、测试工具、测试组件、测试文档。
文档编号G06F11/36GK101833507SQ201010161608
公开日2010年9月15日 申请日期2010年5月4日 优先权日2010年5月4日
发明者王轶辰 申请人:王轶辰
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1