杨汉秀
(四川外国语大学重庆南方翻译学院 )
摘要:多维度覆盖率软件测试方法是一种比较全面的软件性能测试方法,能够对软件的多种性能进行测试,通过对多维度软件测试动态评价方法的系统架构、测试流程、多维度覆盖率的测试方式进行探讨,并对软件的动态分析与评价进行了研究。
关键词:多维度覆盖率;软件测试;动态评价
随着软件的使用规模不断扩大,对软件的质量与性能上也提出了更高的要求,为了保证软件开发的高效性,就需要对软件进行测试,来提高软件开发的质量与效率,如何动态定量的对软件性能、效率、薄弱点等问题进行测试,这不仅是软件测试的关键问题,也是保证软件质量的重要手段,采用多维度覆盖率的软件测试方法,根据软件测试的薄弱点提出有效的测量策略,是提高当前软件开发质量的途径之一。
一、多维度覆盖率的软件测试动态评价方法框架
在软件测试的过程中,需要结合软件的功能、分支、条件、覆盖等多个方面进行动态的测试,并能够对软件的测试结果做出独立的评价。根据多维度覆盖率软件测试方法的具体要求,需要对软件的测试用例、测试环境、内容、过程、执行测试的结果等进行动态的评价,进而才能有效的发现软件的薄弱点。采用多维度覆盖率测试方法需要对软件进行在线、定量测试,然后依据测试的监测信息、动态评价的模型与软件测试的优化策略等内容对软件进行分析与评价。根据多维度覆盖率的软件测试要求,构建如下图1的软件测试评价的流程框架:
软件稳定性是软件测试的基本要求,在软件交付使用的过程中,就已经确定了软件的框架结构,通过动态测试,对软件的功能、测试结果以及软件存在的薄弱点进行分析,制定有效的测试策略与详细的测试用例,进而能够有效的对软件测试的过程进行动态的反馈与评价,帮助软件开发人员及时发现软件开发过程中存在的问题。
1、多维度软件测试覆盖率分析
测试覆盖率要求对软件测试制定详细的测试计划,可以从基于软件运行的代码进行测试,如软件的语句覆盖、分支覆盖、路径覆盖、软件的监视信息等,也可以从基于软件需求的覆盖率进行测试,例如软件的功能覆盖、软件的需求覆盖、各个通信接口的覆盖测试等,以及面向对象的覆盖率测试,例如多线程的测试、上下文的链接等方面的测试。因此,根据软件的测试要求,需要对软件测试覆盖率进行综合的分析。一般地,多维度覆盖率的测试因素主要包括:各个维度软件测试率的期望值、测试覆盖率的类型与满意率、各类型的测试优先因子以及各个软件模块的关键性测试影响因子等因素。由于规模大、复杂性较高的软件一般都是采用模块化的结构,在测试时需要结合软件结构的构件、类、软件的功能组件等进行测试,可以根据测试软件的關键性级别不同,来制定测试的顺序。为了科学评价软件测试的充分性与有效性,就需要对各个评价模型的测试结果进行动态分析,在软件的测试时间与测试成本的约束下,优先对关键性、级别比较高的核心组件进行充分的测试,形成一个动态测试的环境。
2、综合覆盖测试率
多维度测试覆盖率主要是对软件多个信息对进行测试,具有一定的动态评价效果,它虽然从多个角度度量了软件测试充分程度,也有效的对软件的语句覆盖、路径、分支等问题进行了测试,但它对软件测试缺少综合度量方法,也不能全面的、动态的对软件进行评价。综合测试覆盖率是在软件多维度测试的基础上,对软件的所有综合特征与软件的度量参数进行分析,然后采用动态测试的方法对软件进行测量。
对于综合覆盖测试率的测试主要有基于代码的测试与基于需求的测试两类,二者的测试特点与方法也不相同。在对软件的系统需求进行测试时,需要综合考虑软件的功能覆盖情况,然后对软件系统的需求分析测试、软件的接口测试等方面的测试情况进行分析,并根据测试度量的实际结果对软件进行评价与反馈。而基于软件的代码测试就需要对软件的程序代码进行分析,从代码的运行方式、各个代码之间的嵌套与联系等情况进行测试分析,保证代码在运行时不会出现错误。
二、软件测试动态分析和评价
测试覆盖率是对软件稳定性进行测试的重要手段,通过定量度量软件的方法,能够有效的对软件的性能进行评估。在一般情况下,主要是采用测试时间(或测试用例)的增长函数对软件的性能进行定量分析。因此,利用多维度覆盖率对软件的性能与覆盖能力进行测试,需要综合的对程序代码、软件的功能需求等进行测试,对测试用例数或时间的动态变化特性函数特征进行对比分析,就可以对软件测试进行动态、定量地分析和评价,进而能够有效的对软件的性能进行评价。应用多种软件测试方法与覆盖率测试相结合对软件的性能进行测试,可以提高软件的测试效应,能够准确对测试的软件性能进行分析。在软件测试过程中,需要动态、同步统计绘制各维度测试覆盖率与测试时间变化的函数关系,通过函数关系之间的比较来分析软件的薄弱点,如果发现满意度比较低的覆盖率测试,就可以确定是软件的薄弱点,则改变相应的测试策略,分析在某一个范围内,对被测模块的内部所有通信运行的程序代码进行测试,从而有效对各个测试点的薄弱环节进行对比分析,根据测试结果绘制出软件测试的覆盖率变化表,形成一个定量的软件性能测试关系,就能够有效的对软件性能进行评价与分析。
三、结束语
通过对多维度测试覆盖率及综合测试覆盖率的概念进行研究与分析,并对软件测试的动态评价方法进行了分析与讨论。在当前软件测试的过程中,可以将二者有机的结合在一起对软件的性能进行测试,能够有效的提高软件测试效率。通过多维度测试覆盖率测试策略、软件测试的可靠性建模和软件质量评价方法相结合,能够对软件的功能、覆盖效率、软件的综合效果等进行测试,并能够绘制出软件测试的覆盖率变化表,从而能够有效的对软件的性能进行评估与反馈。
参考文献:
[1]李想,李树森,李树.基于灰色理论的水环境评价[J].能源与节能,2014(8).
[2]漆莲芝.基于过程度量的软件测试质量管理[J].计算机测量与控制,2016(7).
[3]徐中伟,吴芳美.软件测试质量的度量[J].计算机工程与应用,2015(2).