论文标题

对海洋模型应用的变质测试方案的自动识别

Automated identification of metamorphic test scenarios for an ocean-modeling application

论文作者

Hiremath, Dilip J., Claus, Martin, Hasselbring, Wilhelm, Rath, Willi

论文摘要

变质测试试图在没有测试牙齿的情况下验证软件。我们的应用领域是海洋建模,其中经常不存在测试甲壳,而是知道模拟物理系统的对称性。在这篇简短的论文中,我们介绍了使用机器学习自动生成变质测试方案的工作。变质测试可以表示为f(g(x))= h(f(x)),其中f是正在测试的应用,带有输入数据x的应用,并具有变质关系(g,h)。自动生成的变质关系可用于构建回归测试,并比较同一软件应用程序的不同版本。在这里,我们仅限于H作为身份图。然后,构建测试的任务意味着找到不同的G,我们使用机器学习算法来解决这些g。这些算法通常可以最大程度地减少成本函数。由于已经知道一种可能的g是身份图,因此为了找到第二个可能的g,我们构建了成本函数,以最大程度地减少G为变质关系,并惩罚G为身份图。在确定了第一个变质关系后,将其重复使用成本函数的G重复该过程,该成本函数与先前发现的变质关系是正交的。为了进行实验评估,将对海洋模型应用的两种实现进行拟议的方法,目的是提出使用变质关系来测试应用程序的实现。

Metamorphic testing seeks to validate software in the absence of test oracles. Our application domain is ocean modeling, where test oracles often do not exist, but where symmetries of the simulated physical systems are known. In this short paper we present work in progress for automated generation of metamorphic test scenarios using machine learning. Metamorphic testing may be expressed as f(g(X))=h(f(X)) with f being the application under test, with input data X, and with the metamorphic relation (g, h). Automatically generated metamorphic relations can be used for constructing regression tests, and for comparing different versions of the same software application. Here, we restrict to h being the identity map. Then, the task of constructing tests means finding different g which we tackle using machine learning algorithms. These algorithms typically minimize a cost function. As one possible g is already known to be the identity map, for finding a second possible g, we construct the cost function to minimize for g being a metamorphic relation and to penalize for g being the identity map. After identifying the first metamorphic relation, the procedure is repeated with a cost function rewarding g that are orthogonal to previously found metamorphic relations. For experimental evaluation, two implementations of an ocean-modeling application will be subjected to the proposed method with the objective of presenting the use of metamorphic relations to test the implementations of the applications.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源