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

Bug还是不是Bug?分析蜕变关系违反背后的原因

Bug or not Bug? Analysing the Reasons Behind Metamorphic Relation Violations

Alejandra Duque-Torres, Dietmar Pfahl, Claus Klammer, Stefan Fischer

AI总结:

本文针对蜕变测试中MR违反原因难以判断的问题,开发了一种利用关联规则挖掘(ARM)技术细化MR的方法,以区分违反是由Bug引起还是MR不匹配,并通过概念验证证明了该方法能有效加强回归测试的测试套件。

摘要:

蜕变测试(MT)是一种能有效缓解预言机问题的测试技术。MT使用蜕变关系(MRs)来确定测试用例是通过还是失败。MRs规定了在执行待测系统(SUT)时,输出应如何响应特定的输入变化而变化。如果某个特定的MR在至少一个测试输入(及其变化)下被违反,那么SUT存在故障的概率很高。另一方面,如果某个特定的MR没有被违反,这并不能保证SUT没有故障。然而,判断MR被违反是由于Bug还是因为MR对于特定输入生成的特定条件不成立或不适用,这仍然是一项手动且未被探索的任务。在本文中,我们开发了一种细化MR的方法,以提供关于违反是由于Bug引起还是由于MR在特定情况下与某些测试数据不匹配的提示。在我们的初始概念验证中,我们使用关联规则挖掘(ARM)技术从规则中提取相关信息。在我们的初始概念验证中,我们在一个简单示例上验证了我们的方法,并讨论了从实验中获得的经验教训。我们的概念验证表明我们的方法是适用的,并且我们可以提供建议来帮助加强用于回归测试目的的测试套件。

英文摘要:

Metamorphic Testing (MT) is a testing technique that can effectively alleviate the oracle problem. MT uses Metamorphic Relations (MRs) to determine if a test case passes or fails. MRs specify how the outputs should vary in response to specific input changes when executing the System Under Test (SUT). If a particular MR is violated for at least one test input (and its change), there is a high probability that the SUT has a fault. On the other hand, if a particular MR is not violated, it does not guarantee that the SUT is fault free. However, deciding if the MR is being violated due to a bug or because the MR does not hold/fit for particular conditions generated by specific inputs remains a manual task and unexplored. In this paper, we develop a method for refining MRs to offer hints as to whether a violation results from a bug or arises from the MR not being matched to certain test data under specific circumstances. In our initial proof-of-concept, we derive the relevant information from rules using the Association Rule Mining (ARM) technique. In our initial proof-of-concept, we validate our method on a toy example and discuss the lessons learned from our experiments. Our proof-of-concept demonstrates that our method is applicable and that we can provide suggestions that help strengthen the test suite for regression testing purposes.

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

↑