基于多样性原理的面向对象程序测试中蜕变关系生成与复用技术研究

批准号:
61762040
项目类别:
地区科学基金项目
资助金额:
38.0 万元
负责人:
毛澄映
依托单位:
学科分类:
F0203.软件理论、软件工程与服务
结题年份:
2021
批准年份:
2017
项目状态:
已结题
项目参与者:
唐颖军、汪靖、聂鹏、陈积富、徐常福、占徐政
国基评审专家1V1指导 中标率高出同行96.8%
结合最新热点,提供专业选题建议
深度指导申报书撰写,确保创新可行
指导项目中标800+,快速提高中标率
微信扫码咨询
中文摘要
蜕变测试因能有效地减轻软件测试中的Oracle(预期输出结果)问题而引起广泛关注。虽然该方法巧妙地规避了人工指定Oracle的麻烦,但也引出了蜕变关系的构造难题。本项目试图在多样性原理的指导下,探索面向对象程序蜕变测试中蜕变关系的自动生成与复用技术。针对方法参数包含对象型等复杂数据类型,设计对应的输入数据变异规则集,进而提出基于不变式动态检测的蜕变关系生成算法。针对系统级别的测试,重点探讨在对象状态非等价关系情形下的蜕变关系生成问题,拟在智能搜索、频繁模式挖掘等技术的支持下构造形如“方法调用序列对”的蜕变关系。在蜕变关系的复用方面,拟基于语义主题模型计算程序模块之间的功能或特征相似性,进而给出跨程序条件下蜕变关系的协同过滤推荐算法。此外,还通过蜕变关系优先级的多目标建模与求解,实现在程序演化背景下的蜕变关系最大差异化复用。总之,上述研究将有助于进一步丰富蜕变测试的方法体系、拓展其应用领域。
英文摘要
Metamorphic testing has attracted great attention since it can effectively alleviate the Oracle (i.e., excepted output results) problem in software testing. Although this method is a good way to avoid the Oracle problem, it also leads to the difficulty in the construction of metamorphic relations. Guided by the principle of diversity, this project attempts to explore the techniques on the automated generation and reuse of metamorphic relations for Object-Oriented programs metamorphic testing. For the complex data types such as objects in method (or function) parameters, the set of mutation rules for the corresponding input data is defined firstly, and then the metamorphic relation generation algorithm based on dynamic detection of invariants will be proposed. In the system-level testing, the research emphasizes the metamorphic relation generation in the case of nonequivalent object states. The intelligent searching and frequent pattern mining techniques will be used to build the metamorphic relations in the form of the pair of method invocation sequences. With regard to metamorphic relation reuse, a recommendation algorithm based on collaborative filtering will be presented for suggesting the cross-program metamorphic relations. In the above solution, the similarity between two program modules is measured by means of topic model. In addition, in order to keep the diversity of selected metamorphic relations for testing the evolved programs, the prioritization problem of metamorphic relations and its solution about multi-objective optimization are both proposed. In a word, the above researches will enrich the methods for metamorphic testing and expand its application fields.
面向对象程序设计范式因具有良好的封装、继承与多态特性而被广泛采用,目前面向对象程序已经成为工程计算、电子商务、人工智能等领域的主流软件形态。然而,这类程序的控制逻辑更加复杂、数据格式更为多样,因此它们的测试数据与测试预言生成问题变得特别困难。本项目以Java和Python语言实现的面向对象程序作为研究对象,重点探讨了该类程序蜕变测试中的三个核心问题。. 在项目研究过程中,以“多样性”(diversity)作为基本准则来设计蜕变关系或测试数据的生成算法。以智能商务领域的推荐系统为例,研究蜕变关系生成方法,深入分析矩阵作为输入的数据处理系统的特点,提出了交换、倍乘、增量、取反和重复等五个方面的蜕变关系生成启发式规则。同时,针对以字符串类型作为输入参数的面向对象程序,设计了一种基于等价方法操作序列检测的蜕变关系生成方法。. 在蜕变测试初始输入数据生成方面,充分利用KD-tree能够显著降低候选点最近邻查询代价的优点,通过平衡该查询的准确性与代价,设计了三种基于距离的适应性随机测试(ART)改进算法。另外,综合基于随机划分的ART(RP-ART)和迭代划分测试(IPT)这两种方法的优点提出了一种基于柔性划分的ART方法。. 在蜕变关系复用方面,分别对方法头部、方法体代码以及注释语句开展词法、语义分析,基于深度学习模型解析出关于方法级别程序的特征向量模型。在此基础上,运用基于协同过滤模型的推荐技术来构建面向方法级程序代码的蜕变关系复用算法。进一步地,针对部分程序没有注释信息的特点,探索了基于代码注释信息自动生成的蜕变关系推荐方法。. 本项目针对数据分析与处理、商务智能领域的面向对象程序,围绕蜕变测试中的蜕变关系生成、测试数据生成、蜕变关系推荐三个方面开展了深入研究。相较于当前的一些代表性方法,所提出的蜕变关系或测试数据生成算法展示了明显的先进性与高效的计算效率。
期刊论文列表
专著列表
科研奖励列表
会议论文列表
专利列表
Toward a K-means clustering approach to adaptive random testing for object-oriented software
面向对象软件的自适应随机测试的 K 均值聚类方法
DOI:10.1007/s11432-018-9827-9
发表时间:2019-09
期刊:Science China: Information Sciences
影响因子:--
作者:Jinfu Chen;Minmin Zhou;T.H. Tse;Tsong Yueh Chen;Yuchi Guo;Rubing Huang;Chengying Mao
通讯作者:Chengying Mao
DOI:--
发表时间:2018
期刊:计算机工程与科学
影响因子:--
作者:占徐政
通讯作者:占徐政
KDFC-ART: a KD-tree approach to enhancing Fixed-size-Candidate-set Adaptive Random Testing
KDFC-ART:增强固定大小候选集自适应随机测试的 KD 树方法
DOI:10.1109/tr.2019.2892230
发表时间:2019-03
期刊:IEEE Transactions on Reliability
影响因子:5.9
作者:Chengying Mao;Xuzheng Zhan;T.H.Tse;Tsong Yueh Chen
通讯作者:Tsong Yueh Chen
A Cost-effective Algorithm for Inferring the Trust Between Two Individuals in Social Networks
一种用于推断社交网络中两个人之间信任的经济有效的算法
DOI:10.1016/j.knosys.2018.10.027
发表时间:2019-01
期刊:Knowledge-Based Systems
影响因子:8.8
作者:Chengying Mao;Changfu Xu;Qiang He
通讯作者:Qiang He
Exploiting the Largest Available Zone: A Proactive Approach to Adaptive Random Testing by Exclusion
利用最大的可用区域:通过排除进行自适应随机测试的主动方法
DOI:10.1109/access.2020.2977777
发表时间:2020
期刊:IEEE Access
影响因子:3.9
作者:Jinfu Chen;Qihao Bao;T. H. Tse;Tsong Yueh Chen;Jiaxiang Xi;Chengying Mao;Minjie Yu;Rubing Huang
通讯作者:Rubing Huang
面向数据处理程序的多样性制导式智能随机测试方法研究
- 批准号:62172195
- 项目类别:面上项目
- 资助金额:58万元
- 批准年份:2021
- 负责人:毛澄映
- 依托单位:
基于智能信息处理的Web服务可信性预测与评估技术研究
- 批准号:61462030
- 项目类别:地区科学基金项目
- 资助金额:44.0万元
- 批准年份:2014
- 负责人:毛澄映
- 依托单位:
基于消息变异与网络建模的Web服务系统脆弱性分析
- 批准号:61063013
- 项目类别:地区科学基金项目
- 资助金额:23.0万元
- 批准年份:2010
- 负责人:毛澄映
- 依托单位:
Web服务软件测试中用例生成及结果诊断方法研究
- 批准号:60803046
- 项目类别:青年科学基金项目
- 资助金额:18.0万元
- 批准年份:2008
- 负责人:毛澄映
- 依托单位:
国内基金
海外基金
