核电蜕变测试工具研究

2019-12-23 09:28时小芳王晓丽
电脑知识与技术 2019年31期

时小芳 王晓丽

摘要:随着核电产业的迅猛发展,核电设计软件需求量日益增加。针对核电计算程序在测试中遇到的Oracle问题,应用蜕变测试(MR)技术能够得到有效解决。但是目前基于蜕变测试技术开发的软件大多数运用手动的方式,不但效率低,而且精确度不高,因此研究出一种核电蜕变测试工具至关重要。本文主要研究了核电蜕变测试工具(半自动化)的设计思路,其中包括此工具的目的、算法和功能,旨在提高核电计算程序的测试效率。

关键词:核电计算程序;Oracle问题;蜕变测试工具

中图分类号:TP31 文献标识码:A

文章编号:1009-3044(2019)31-0254-02

1背景

随着核电产业的迅猛发展,核电设计软件需求量日益增加。传统的软件测试方法通常是采用比较程序的实际输出结果与预期输出结果是否相同来推测程序是否存在错误。但是,鉴于核电计算程序计算量大、较为复杂,传统测试方法已无法满足需求,基于此,提出了蜕变测试,而基准题在蜕变测试过程中扮演着十分重要的角色。而获取充足的基准题不仅困难,而且花费代价相当大,若依据数学模型或物理模型推导出的蜕变关系在原有基准题的基础上生成大量的衍生基准题,将大大降低获取基准题的成本,对于提高测试的充分性和效率意义重大。然而,如何验证其蜕变关系的可靠性是急需解决的一大难题。为了解决这一难题,本文设计了一款蜕变测试工具—核电蜕变测试工具。

2设计目标

针对目前核电软件测试中遇到的Oracle问题,提出了蜕变测试,在蜕变测试过程中,基准题集是否充分与蜕变关系是否可靠是影响其测试效率的两大因素。针对后者,开发了核电蜕变测试工具,其设计目标如下图所示:

上图描述了核电蜕变测试工具的主要设计目标,其主要目标是实现通过调用蜕变关系使得原始基准题(测试用例)衍生出其他的基准题,然后再通过执行待测程序(.exe程序)来执行衍生基准题和原始基准题并获取与其相对应的输出结果,其次再差异提取两个输出文件并验证它们是否符合蜕变关系,最后再将产生的结果生成报告单。

3算法思想

根据以上设计目标和设计思路,结合文献【3,4】,现给出本工具的算法思路如下:

4功能设计

根据以上设计思路,本工具的设计种包括五大功能模块,分别为选择原始基准题、选择蜕变关系、生成衍生基准题、执行测试用例、测试结果分析。其中,衍生基准题、选择蜕变关系和原始基准题之间的联系是衍生基准题是由原始基准题调用蜕变关系计算得到的,执行测试用例的执行对象是衍生基准题和原始基准题,运算对象是待测程序,测试结果分析的对象是执行测试用例之后输出的结果。

根据以上所述,现提出本工具的功能设计如下图所示:

其中,在選择原始基准题、选择蜕变关系、生成衍生基准题三个功能中包括备份数据、修改数据、删除数据和保存数据;生成衍生基准题功能不但包括备份数据、修改数据、删除数据和保存数据,还包括选中原始基准题和选中蜕变关系两个功能;执行测试用例功能中包括选中衍生测试用例、原始测试用例和调用待测程序三个功能;由于运行结果需要被分析,所以测试结果分析功能中应该包括选择输出文件和差异提取两功能,除此之外,还需要将分析后的结果生成测试报告。

5总结

本文针对核电计算程序测试中遇到的效率低下、精确度不高的问题,设计了一种半自动化核电蜕变测试工具,相对于传统的核电测试工具而言,其效率和精确度更高,增加了蜕变测试自动化的可能。