三、蜕变测试的核心挑战 虽然蜕变测试可以在不了解程序正确输出的情况下进行有效测试,缓解各应用领域特别是人工智能领域的测试预言问题,但在实际应用中仍需解决两大核心问题——蜕变关系的识别和蜕变关系的选择。 1.蜕变关系的识别 蜕变关系的构造是蜕变测试技术在执行过程中的关键环节,其有效性直接决定着测试效果。蜕变...
蜕变关系(Metamorphic Relations, MR)是一组预期的输入输出间的关系,即:一组与模型算法中多对输入和输出相关的属性,在多次执行目标程序时,输入与输出之间期望遵循的关系,常用来验证模型的稳定性和一致性。 三、蜕变关系 我们了解了蜕变测试的流程,接下来就了解蜕变的关系。这也是蜕变测试的难点和核心的关键点。 这里...
蜕变关系(Metamorphic Relation, MR) MR是蜕变测试中的核心概念。蜕变关系是指:在输入变化时,输出应该遵循的预期规律。 蜕变关系的一致性 当输入按照蜕变关系发生变化时,得到的新输出和原始输出的关系符合蜕变关系定义的预期(例如,在情感分析任务中,蜕变关系定义为:改变同义词不应该改变情感。) 蜕变关系的不一致性 当...
蜕变测试(Metamorphic Testing,简称MT)是一种独特的测试方法,它就像一个侦探,通过发现和检验隐藏的规律来帮助我们测试那些难以直接判断对错的复杂事物。🕵️♂️ 想象一下,你正在玩一个超级计算器游戏,但这个计算器有点特别,它的按钮上没有明确标注每个功能的具体作用。比如,有一个按钮叫“神秘运算”。🔢...
蜕变关系则是指在蜕变测试中,确定新旧版本软件之间的关系,以便准确地进行测试。蜕变测试的规则包括确定蜕变关系、设计测试用例、执行测试用例、比较测试结果等。根据蜕变关系的不同特点,蜕变测试可以分为等价类蜕变测试、边界值蜕变测试、因果关系蜕变测试等不同的分类。 从功能角度来看,蜕变测试的目的是确保软件在升级后...
说到蜕变测试,不得不提的一个词“蜕变关系”, 什么是蜕变关系呢? 蜕变关系(Metamorphic Relations, MR)是一组预期的输入输出间的关系,即:一组与模型算法中多对输入和输出相关的属性,在多次执行目标程序时,输入与输出之间期望遵循的关系,常用来验证模型的稳定性和一致性。
蜕变测试(metamorphic testing)是一种新型软件测试技术。要把蜕变测试这个概念讲清楚,不是一件容易的事情。 蜕变测试的科学定义是:识别被测软件所具有的蜕变关系(metamorphic relations),通过检查这些蜕变关系是否成立来判断软件是否存在缺陷的技术。这里的蜕变关系,指的是被测软件多对输入/...
本综述旨在全面梳理和总结近年来在蜕变测试技术方面的研究进展,包括其理论基础、关键技术、应用场景以及面临的挑战与未来的发展趋势。通过对现有文献的系统回顾和综合分析,我们旨在为读者提供一个关于蜕变测试技术的理论与实践框架,以促进该领域的学术交流和技术进步。
1、蜕变测试概述 程序的执行结果不能预知的现象在测试理论中称为“Oracle问题”,即预期结果不知道。 例如测试sin(x)函数时,sin270的预期结果并不知道,这时就无法验证当x=270 时程序执行的正确性。 Oracle问题是“软件测试中最困难的任务”,它导致测试人员只能选择一些可以预知结果的特殊测试用例进行测试,而不能完整...