基于路径分析的蜕变测试组生成与优先级排序技术  

Metamorphic Testing Group Generation and Prioritization Technique Based on Path Analysis

在线阅读下载全文

作  者:孙昌爱[1] 邢嘉煜 刘宝莉 付安 SUN Chang-Ai;XING Jia-Yu;LIU Bao-Li;FU An(School of Computer and Communication Engineering,University of Science and Technology Beijing,Beijing 100083)

机构地区:[1]北京科技大学计算机与通信工程学院,北京100083

出  处:《计算机学报》2025年第3期675-693,共19页Chinese Journal of Computers

基  金:国家自然科学基金(62272037,61872039)资助。

摘  要:蜕变测试依据待测软件的蜕变属性(通常表示为蜕变关系),由原始测试用例生成衍生测试用例,通过检查它们对应的输出结果是否满足蜕变关系确定测试是否通过,由于无需构造单个测试用例的预期输出结果,因此有效地缓解了测试预期问题。不难看出,蜕变关系和原始测试用例决定了蜕变测试的故障检测有效性。尽管已经存在一些面向蜕变测试的测试用例生成方法,这些方法存在如下不足:忽略了蜕变关系的作用范围,存在易于生成无效的测试用例的问题;仅仅考虑原始测试用例之间的差异,导致生成的蜕变测试组(即原始测试用例与衍生测试用例对)不充分问题;未考虑测试用例的故障检测能力差异,从而影响蜕变测试的故障检测效率。针对上述问题,本文提出了一种基于路径分析的蜕变测试组生成与优先级排序技术(简称PaMTG)。在待测程序路径分析的基础上,PaMTG首先获得满足蜕变关系的可行路径对,然后生成覆盖可行路径对的蜕变测试组,最后依据执行路径信息对蜕变测试组进行优先级排序。开发了相应的支持工具,并采用一组程序从测试用例的有效性、故障检测能力、故障检测效率和时间开销四个方面对PaMTG进行了实验评估。实验结果表明,PaMTG能够生成有效的蜕变测试组,且生成的蜕变测试组的故障检测能力与效率优于现有基准技术。Metamorphic testing(MT)leverages metamorphic properties(usually known as metamorphic relationships,MR)of the software under test(SUT)to generate the follow-up test cases from the source test cases,and verify the test results by examining whether the MR is followed by the corresponding outputs.MT effectively alleviates the oracle problem because it is no longer necessary to obtain the expected outputs of individual test cases.Obviously,the used MRs and source test cases play a key role in the fault detection effectiveness of MT.Although there are already some test case generation methods for MT,they have the following limitations.Firstly,the scope of applicable input domains for an MR is not carefully considered,which may result in invalid test cases.Secondly,only the differences between source test cases are considered during the test case generation,which may result in insufficient metamorphic testing groups(a pair of source test case and follow-up test case,briefly as MTG).Finally,the fault detection capability of test cases is not considered,which may affect the fault detection efficiency of MT.In order to solve the above limitations,we propose a metamorphic testing group generation and prioritization technique based on path analysis(PaMTG).PaMTG first obtains all path pairs of the MR through analyzing the possible paths of the SUT,then generates MTGs to cover as many path pairs as possible,and finally prioritizes the derived MTGs according to their covered path information.A supporting tool was developed and an empirical study was conducted to evaluate PaMTG in terms of valid MTG ratio,fault detection capability,fault detection rate,and time overhead.The experimental results show that PaMTG is able to generate valid MTGs,and the fault detection capability and fault detection rate of the generated MTGs are better than that of the existing baseline techniques.

关 键 词:软件测试 蜕变测试 符号执行 测试用例生成 测试用例优先级排序 

分 类 号:TP391[自动化与计算机技术—计算机应用技术]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象