-
公开(公告)号:CN118170652A
公开(公告)日:2024-06-11
申请号:CN202410294702.9
申请日:2024-03-07
Applicant: 南京大学
IPC: G06F11/36 , G06F18/241 , G06F8/41
Abstract: 本发明提出了一种基于堆栈信息的编译器崩溃类缺陷去重方法。该方法利用编译器崩溃时生成的堆栈信息,并结合编译器运行的上下文信息,对触发相同缺陷的崩溃报告进行识别和去重。具体而言,该方法首先收集编译器运行的上下文和运行至崩溃处的堆栈信息。然后,通过对上下文和堆栈信息进行分析和比对,将具有相同或相似堆栈信息的崩溃识别为重复的缺陷以进行去重。与现有方法相比,本发明的优点在于充分利用了编译器运行的上下文和堆栈信息,提高了崩溃类缺陷的识别和去重的准确性,有效减少开发人员缺陷分析和定位的工作量。
-
公开(公告)号:CN117851260A
公开(公告)日:2024-04-09
申请号:CN202410060200.X
申请日:2024-01-11
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提供了一种基于多组对抗配置的编译器缺陷定位方法,主要包括下列步骤:1)识别缺陷相关的细粒度优化选项;2)基于不同配置生成多组对抗配置;3)基于程序频谱获取编译器文件的可疑度排名;4)聚合多组排名汇总定位结果。本发明解决了现有方法仅使用单个对抗配置的编译器缺陷定位方法效果不够理想的问题,生成和融合多个对抗配置的定位结果来提升编译器缺陷定位的效果。该方法通过生成和融合多组不同的对抗配置,可以更加有效地定位编译器的缺陷,帮助开发者快速修复缺陷,提升编译器质量,为后续依赖编译器的软件工程应用提供了基础支撑。
-
公开(公告)号:CN116185851A
公开(公告)日:2023-05-30
申请号:CN202310145904.2
申请日:2023-02-21
Applicant: 南京大学
IPC: G06F11/36 , G06F16/2458
Abstract: 本发明提供了一种历史缺陷用例赋能的SMT求解器缺陷检测方法,主要步骤:1)从求解器的缺陷追踪系统中自动化收集历史缺陷用例;2)提取历史缺陷用例中逻辑公式的骨架结构(即公式中逻辑连接词构成的逻辑结构)以及原子公式;3)对所提取出的原子公式抽象化并进行关联规则学习;4)在关联规则的指导下使用原子公式对已提取出的骨架结构进行实例化,以得到可用于求解器测试的逻辑公式,对多个求解器进行差分测试。本发明解决了求解器缺陷检测中有效的测试输入难以生成的局限,基于历史缺陷用例构造新的揭错能力强的测试用例的方法为求解器缺陷检测提供了一套全新的解决方案。
-
公开(公告)号:CN116048988A
公开(公告)日:2023-05-02
申请号:CN202310042641.2
申请日:2023-01-05
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提供了一种基于长时执行测试程序过滤的编译器测试加速方法,主要包括下列步骤:1)对随机程序生成器生成的每一个测试程序进行插桩;2)给定短暂运行时间,对于没有在给定时间内运行结束的测试程序,获取测试程序运行时的覆盖信息;3)过滤覆盖信息超过设定阈值的测试程序。本发明提出将长时运行测试程序的检测问题转化为测试程序中超大循环或死循环的检测问题,在过滤掉潜在长时运行测试程序后,能够在有限的测试资源下执行更大量的测试程序,从而达到加速编译器测试过程的目的。
-
公开(公告)号:CN115422082A
公开(公告)日:2022-12-02
申请号:CN202211161595.X
申请日:2022-09-22
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提供了一种基于调试信息支撑的代码覆盖器缺陷检测方法,主要包括下列步骤:1)使用代码覆盖器为测试程序生成覆盖报告,获取代码覆盖信息;2)在调试器中单步调试运行程序,获取代码命中信息;3)在调试器中断点调试运行程序,获取代码命中信息;4)综合两种不同的调试策略下的命中计数,获得综合命中计数;5)比较代码覆盖信息和命中计数,检查是否违反预定义的异构蜕变关系;6)违反异构蜕变关系视为代码覆盖器中的缺陷。本发明利用调试信息对覆盖信息进行验证,解决了代码覆盖器测试中测试预言缺失的技术难题,且克服了现有方法的局限。该方法能有效检测覆盖器的缺陷,提高代码覆盖器质量。
-
公开(公告)号:CN109814855A
公开(公告)日:2019-05-28
申请号:CN201711188298.3
申请日:2017-11-21
Applicant: 南京大学
Abstract: 本发明提出一种基于对象分类和自适应子图匹配的API推荐方法,先将API方法使用模式串根据方法所属类划分,然后对每个类中的API使用模式串建立图库GDB。当需在位置L处推荐时,先从L的上文代码中抽取与待推荐方法属于同类的方法使用模式串,生成图SG,进行剪枝得到集合。对于集合中每个子图,先计算子图概率,继而使用子图在图库中搜索匹配得到候选方法及对应概率,将其与子图概率相结合可得到每个方法最终被调用概率。根据概率由高至低排序得到最终API方法推荐列表。实验证明在推荐准确性方面,显示本发明中提出的API推荐方法优于按字母排序的API推荐方法,也优于基于N-Gram语言模型的API推荐方法。
-
-
-
-
-