一句话:OASIs 是一个基于搜索的 Java 工具,结合测试生成与变异测试帮助评估并迭代改进测试预言。
测试预言问题(oracle problem)是软件测试中的核心挑战之一,目前仍缺乏自动化支持。本文介绍 OASIs,一个面向 Java 的基于搜索的测试预言评估与改进工具。OASIs 通过结合测试用例生成来揭示假阳性(false positives)和变异测试来揭示假阴性(false negatives),从而帮助测试人员评估现有测试预言的质量。论文描述了 OASIs 的工作原理、实现细节,以及如何将其用于人在回路(human-in-the-loop)的迭代式测试预言改进流程中。作者还总结了此前实证评估结果:使用 OASIs 改进测试预言后,其故障检测率平均提升 48.6%。
The oracle problem remains one of the key challenges in software testing, for which little automated support has been developed so far. We introduce OASIs, a search-based tool for Java that assists testers in oracle assessment and improvement. It does so by combining test case generation to reveal false positives and mutation testing to reveal false negatives. In this work, we describe how OASIs works, provide details of its implementation, and explain how it can be used in an iterative oracle improvement process with a human in the loop. Finally, we present a summary of previous empirical evaluation showing that the fault detection rate of the oracles after improvement using OASIs increases, on average, by 48.6%.