APP下载

软件测试管理中的关键技术分析

2016-03-05王明珠

无线互联科技 2015年9期
关键词:关键技术过程

王明珠

摘要:随着科学技术的不断发展,对软件质量也提出更高的要求。而软件质量的保证主要得益于有效的测试管理,以往软件测试过程中主要集中在软件编码测试方面,忽视对软件项目开发的全过程进行分析。对此要求对复杂的软件测试项目构建完善的测试管理流程,从软件测试管理中促进软件应用质量的进一步提高。文章主要对软件测试管理的基本概述、P-TMS软件测试管理系统的研究设计以及所应用的关键技术进行探析。

关键词:软件测试管理;过程;关键技术

1 引言

在软件大规模开发的背景下,软件测试管理工作也面临较大的工作量与技术难题。据美国质量保证研究所相关数据研究发现,相比编码前的缺陷修改,软件编码完成后修改其中缺陷所涉及的成本将提高10倍左右,若产品处于交付状态并需进行修改将为交付前缺陷修改成本10倍左右,充分说明以过程为基础的软件测试管理的重要性。这就要求测试工作管理不断加强,引用先进的技术手段,保证软件质量的提高。

2 软件测试管理的基本概述

2.1 软件测试管理的内容与目标

软件测试管理的实质在于跟踪与管理各测试阶段中的相关计划与流程,并将测试管理的相关结果向系统研发人员与管理人员进行反馈,同时要求根据软件系统中的缺陷生成相应的报告。测试管理的内容重要包括对过程的测试、对人员的测试以及对工作产品的测试。其中在管理测试过程方面主要考量软件的应用情况与测试是否具备有效性,在此基础上做好后期测试过程的改进。在管理测试人员方面,需对软件人员的工作状况等相关数据进行分析与收集,判断是否与预期测试目标相吻合。而在管理工作产品测试方面主要对测试软件产品进行分析与测量并从中获取能够为决策提供参考的数据信息。因此,软件测试管理的目标实质是控制与管理整个测试流程,以此保证软件产品的质量。

2.2 软件测试管理主要概念分析

软件测试过程中涉及的概念主要包括测试用例、缺陷以及协同等方面。其中的测试用例可细化为相关的数据与所得出的结果,用于判断测试结果是否与测试计划目标相吻合,确定软件应用程序中是否存在影响正常运行的问题。而缺陷的概念,很多研发人员往往以Bug代指软件开发过程中存在的问题,从狭义角度分析指为由程序编写过程产生的问题,而在广义上认为软件应用使用过程中出现的错误。而对协同的概念,根据以往学者将其应用于计算机中的定义为对空间分布与时间分离支持的同时,使软件各部分共同合作。

3 以P-TMS为例的软件测试管理系统分析

P-TMs软件测试管理系统中的相关角色主要包括软件项目负责人、系统分析人员、测试设计人员、软件开发人员以及用户等内容。利用这种工作模型的优势主要在于可在设计工作前设计测试用例,有利于及时发现软件设计中存在的问题等。具体测试过程主要表现在以下几方面。

3.1 从需求跟踪管理角度出发

进行需求跟踪管理过程中所分析的主要为用户原始需求,其中的测试用例集中所包含的用例具有一定的关联性,且对应测试用例往往存在一定的缺陷问题。但值得注意的是许多需求项无需利用测试用例,不必对其跟踪管理。另外,在需求跟踪过程中,由于用户对软件项目的需求不同阶段会存在一定的变化,要求构建需求变更流程,具体过程包括对需求变更的申请,在此基础上制定变更的决策,最后在落实阶段需对测试用例重新设计并修改测试用例库。

3.2 从测试用例管理角度出发

软件测试工作的成败很大程度上受测试用例管理的影响。具体管理过程中首先需对其组织结构进行分析,保证其中的上下级系统、子系统、功能模块以及测试用例集等设置合理,通常各功能模块中往往包含许多功能项,而功能项中集合部分测试用例集,各测试用例集又存在许多测试用例。其次,由于被测软件项目存在功能相似或同样的情况,具有同样的测试要求。对此可引用复用技术,测试功能项或需求项相同的软件过程中便可在测试用例库中寻找对应的测试用例完成测试过程。

3.3 从缺陷管理角度出发

软件生命周期内无论研发阶段或使用阶段都存在一定的缺陷问题,要求做好缺陷跟踪管理工作。软件项目测试管理中的相关人员都可对存在Bug向测试主管提交,而测试人员便需做好缺陷状态以及解决缺陷问题的相关数据统计,以使项目进展情况可被及时掌握。同时,应做好项目缺陷的分类,如程序问题、数据处理中的错误、编码规范性问题、接口错误、内存管理、系统性能等方面,在此基础上针对每种类型缺陷提出相应的解决方案并存档与缺陷方案库中,再次出现该类缺陷时便可从方案库中找到对应解决方法。

3.4 从软件测试度量角度出发

软件测试度量主要指量化分析整个软件测试过程,其通过度量缺陷以及测试执行状态,使缺陷位置得以确定并预测软件开发或使用阶段存在的缺陷,以此为依据制定相应的测试计划,很大程度上保证软件的可靠性。其中对缺陷的度量需构建缺陷的相关报告以及趋势图,而度量执行状态的相关指标主要包括需求测试、功能测试以及测试用例等方面。

4 关键技术在软件测试管理中的应用

根据前文中对P-TMS软件测试管理系统的分析,在实际设计测试管理系统过程中需重点做好主要功能模块的设计工作。其中在设计主要功能模块过程中要求将模块覆盖整个测试管理过程中,具体包括项目规模管理模块、需求项管理模块、测试用例模块、实施计划模块、测试用例模块、管理缺陷的模块、生成报表与系统整体管理模块等。而在设计数据库过程中需根据相应的模块内容,保证各模块间的相关数据融于数据库系统中。这种设计测试款力模块的关键技术主要体现在以下几方面。

4.1 状态流转技术的应用

状态流转技术的提出主要针对软件中存在的缺陷问题,设计过程中考虑到软件开发与应用的角色以及具体职责内容。同时,在实际处理缺陷中除进行状态转换中的相关信息外,其他许多流动信息都具有明显的缺陷属性,对此需保证各处理环节的缺陷处理都需建立在前一环节处理完成的基础上。

4.2 前置测试的关键技术应用

前文在设计构建测试管理系统过程中应用的主要为前置测试技术,其在应用过程中主要考虑到软件在开发初期便通过测试管理发现其中存在的问题,避免开发中缺陷较多,有利于软件开发质量的提高,也便于后期维护工作。而除应用前置测试技术外,实际构建测试管理系统中也应用测试驱动开发相关理念,为各测试管理环节提供保障。

4.3 测试信息共享的关键技术应用

软件测试管理过程中的测试信息共享主要体现在测试用例信息以及缺陷信息的共享。在测试用例信息方面可充分发挥测试用例库的作用,要求设计人员将不同类型的测试用例存储于测试用例库中。同时,在设计测试用例库中也可引入复用技术,对需求项或功能相同的测试用例采取直接复用的方式。另外,在缺陷信息共享方面,可将不同类型的缺陷以及相应的分析解决方法存于缺陷方案库中。使软件中出现类似缺陷时,可在缺陷方案库中寻找对应的解决方案。

4.4 度量与评估的测试关键技术应用

为使测试过程与效果得到正确评估,可充分发挥度量与评估及时的应用。如前文所述可从三方面完成测试评估,包括度量缺陷、度量测试执行情况以及测试的覆盖情况等。但需注意在度量测试覆盖情况以及执行情况中应引入相应的覆盖率指标包括测试用例、需求项、功能项以及测试执行等覆盖率。而在度量缺陷中需做好缺陷统计以及缺陷趋势图设计等工作。通过这种定量评估的技术,能够使软件设计与开发决策提供重要的参考内容。

5 结语

软件质量的保证需充分发挥软件测试管理的作用。通过文中基于过程的软件测试管理系统设计分析,要求在实际构建过程中注重应用状态流转技术、前置测试技术、信息共享以及度量测试过程与效果的相关技术,并保证测试管理系统中个模块如项目管理模块、测试的计划以及管理缺陷等模块都可发挥应有的效果,这样才可有效监视测试管理的全过程,为软件质量提供坚实的保障。

猜你喜欢

关键技术过程
血脑屏障损伤在正常衰老过程中的作用
小麦春季化控要掌握关键技术
棉花追肥关键技术
成功育雏的关键技术
老苹果园更新改造的关键技术
享受真实,享受过程
描写具体 再现过程
临终是个怎样的过程
跨座式单轨与中低速磁浮信号系统的关键技术
杉木萌芽更新关键技术