Automatically Generating Metamorphic Relations via Genetic Programming

2023年12月23日
  • 简介
    本文介绍了一种名为变异测试的流行方法,旨在缓解软件测试中的预言问题。该方法的核心是变异关系(MRs),指定在多个测试输入和相应输出之间保持的属性。由于自动生成MRs是一个具有挑战性和未被充分探索的问题,因此推导MRs大多是一项手动活动。本文提出了一种名为GenMorph的技术,用于自动生成涉及布尔值、数字或有序序列的Java方法的MRs。GenMorph使用进化算法搜索有效的测试预言,即不触发误报并暴露被测方法中的软件错误的预言。所提出的搜索算法由两个适应性函数指导,分别测量生成的MRs的误报数量和漏报故障数量。我们的结果表明,GenMorph为23个方法中的18个方法生成了有效的MRs(变异分数> 20%)。此外,它可以提高Randoop在23个方法中的7个方法的错误检测能力,并提高Evosuite在23个方法中的14个方法的错误检测能力。
  • 作者讲解
  • 图表
  • 解决问题
    自动化生成Metamorphic Relations(MRs)是一个具有挑战性的问题,本文试图解决这个问题。
  • 关键思路
    本文提出了一种名为GenMorph的技术,使用进化算法自动为涉及布尔值、数字或有序序列的Java方法生成有效的MRs。
  • 其它亮点
    GenMorph通过两个适应度函数指导搜索算法,使其生成的MRs不会触发虚警,并能暴露被测试方法中的软件缺陷。实验结果表明,GenMorph可以为23个方法中的18个生成有效的MRs,并且可以提高Randoop和Evosuite的错误检测能力。
  • 相关研究
    最近的相关研究包括“Metamorphic Testing:A Review of Challenges and Opportunities”和“Automated Test Input Generation for Android: Are We There Yet?”等论文。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问