arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2002.12543cs.SE
收藏

变形测试:生成下一个测试用例的新方法

Metamorphic Testing: A New Approach for Generating Next Test Cases

T. Y. Chen, S. C. Cheung, S. M. Yiu

摘要:

在软件测试中,测试用例集是根据一些预定义的选择准则构造的。然后根据这些测试用例检查软件。对当前软件测试的工件进行了三个有趣的观察。首先,一个错误揭示测试用例被认为是有用的,而一个成功的测试用例,不揭示软件错误,通常不会进一步调查。这些成功的测试案例是否仍然包含有用的信息,揭示软件错误还没有得到适当的研究。其次,无论在开发阶段进行了多么广泛的测试,软件中仍然可能存在错误[5]。这些错误如果不被发现,最终可能会对生产系统造成损害。在生产阶段发现软件错误的技术研究很少在文献中讨论。第三,正如Weyuker在[6]中所指出的,在大多数情况下,测试预言机的可用性实际上是无法实现的。然而,在传统的软件测试技术中,通常假设测试预言机的可用性。在本文中,我们提出了一种新的测试用例选择技术,从成功的新的测试用例。选择的目的是揭示软件错误,可能留下未被发现的成功的测试用例,可能会产生使用一些现有的策略。因此,所提出的技术增强了现有的测试选择策略的有效性。该技术还有助于在生产阶段发现软件错误,并且可以在没有测试预言机的情况下使用。

英文摘要:

In software testing, a set of test cases is constructed according to some predefined selection criteria. The software is then examined against these test cases. Three interesting observations have been made on the current artifacts of software testing. Firstly, an error-revealing test case is considered useful while a successful test case which does not reveal software errors is usually not further investigated. Whether these successful test cases still contain useful information for revealing software errors has not been properly studied. Secondly, no matter how extensive the testing has been conducted in the development phase, errors may still exist in the software [5]. These errors, if left undetected, may eventually cause damage to the production system. The study of techniques for uncovering software errors in the production phase is seldom addressed in the literature. Thirdly, as indicated by Weyuker in [6], the availability of test oracles is pragmatically unattainable in most situations. However, the availability of test oracles is generally assumed in conventional software testing techniques. In this paper, we propose a novel test case selection technique that derives new test cases from the successful ones. The selection aims at revealing software errors that are possibly left undetected in successful test cases which may be generated using some existing strategies. As such, the proposed technique augments the effectiveness of existing test selection strategies. The technique also helps uncover software errors in the production phase and can be used in the absence of test oracles.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑