首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 62 毫秒
1.
针对目前编译器采用手工测试方式存在出错率高、测试覆盖难以度量等问题,以TTCN-3 语言编译器为例,在对TTCN-3 核心语言进行等价类划分的基础上,手工编写黑盒测试用例作为输入,收集并求解被测TTCN-3 编译器源码中的每个条件,据此修改由参考编译器生成的对应语法树相关结点,扩展生成新的测试用例。实验表明:根据对被测编译器源码中的条件收集而自动扩展生成的测试集,不仅可以提高测试集的正确性,还可以保证对被测编译器实现的条件覆盖。  相似文献   

2.
模糊测试用例常规的生成方法是随机变异和人工协议分析构造,其分别存在变异盲目效率低和构造复杂代价高的问题。针对上述问题提出运用深度学习技术辅助测试用例生成。利用循环神经网络处理字符文本序列的优势,通过样本数据学习训练结构特征,并预测生成符合结构特征的新数据,与随机变异算法结合构造了自动生成模型。通过以LSTM和GRU算法模型对PDF文件输入型测试用例生成和效果评估,生成的测试用例总体优于常规方法,具有较好的通过率和覆盖率。该方法通过循环神经网络的辅助实现了生成快速高效和构造难度低的优点,达到了生成效果和花费代价的平衡。  相似文献   

3.
任杰  阳昕  石磊  陈渝  杨维康 《计算机工程》2008,34(9):93-94,9
对面向对象的C编译器(OCC)的整体设计进行介绍。OCC以抽象语法树为中间表达形式。语法树节点分为8大类86种,降低了在采用visitor设计模式进行语意分析时节点功能的耦合度。OCC用简易的垃圾回收器解决了语法树节点动态分配和销毁时的内存泄漏问题。OCC的类型分析模块针对类型声明中9个不同组成部分采用7种处理方式,降低了属性文法脚本的维护难度。  相似文献   

4.
测试用例的产生策略是软件测试尤其是编译器测试的一个热点研究领域,测试用例的质量不仅决定了软件测试的科学性,还决定着软件测试的有效性和完整性。本文针对编译器测试中对控制流的测试,提出NAP算法,通过该算法可以生成相关的各种控制流结构。实验证明,NAP算法对编译器控制流的测试有很强的针对性和通用性。  相似文献   

5.
软件漏洞逐年递增,安全问题愈发严重。在软件项目的交付阶段对原始代码进行漏洞检测可以有效避免后期运行时的安全漏洞,而代码漏洞检测依赖于有效的代码表征。传统的基于软件度量的表征方法与漏洞关联性较弱,难以对漏洞信息进行有效表征。近年来,机器学习为漏洞的智能化发现提供了新的思路,但该方法同样可能遗漏关键的代码特征信息。针对以上问题,文中在传统抽象语法树(AST)上增加控制依赖、数据依赖和语句序列边生成增强抽象语法树(EXAST)图结构,对原始代码进行表征以更好地处理代码结构化信息,并采用词向量嵌入算法(Word2Vec)将代码信息初始化为机器能够识别和学习的数值向量。同时,在传统的图神经网络(GNN)中引入门控循环单元(GRU),构建图识别模型,以缓解梯度消失并加强图结构中长期信息的传播,从而增强了代码执行的时序关系,提高了漏洞检测的准确度。最后在SARD公开数据集上对模型进行对比测试,实现了函数粒度的代码漏洞检测,相比传统的漏洞检测方法,准确率和F1分值分别最大提高了32.54%和44.99,实验结果证明了所提方法对代码漏洞检测的有效性。  相似文献   

6.
郭德贵  王冠成  吕帅  刘磊 《软件学报》2017,28(5):1221-1232
部分求值技术在程序优化及软件自动生成等方面,有着极为重要的作用.本文将部分求值技术应用到编译器测试中.为此,设计了一个C语言的子集peC语言,给出了该语言的部分求值策略的形式化描述,实现了peC语言的部分求值器,设计了基于部分求值技术的编译器测试框架.通过实验,本文的方法可以检测出大部分之前的其它的方法发现的GCC、LLVM编译器中的错误,此外还发现了其它方法不能发现的错误,表明将部分求值技术应用到编译器测试中是有效的.  相似文献   

7.
多层前馈模糊神经网络进行图像识别   总被引:1,自引:0,他引:1  
神经网络和模糊技术在模式识别领域中已有了广泛应用,两者有着各自的优势。针对神经网络模式识别中所遇到的问题,为了进一步提高分类器在样本分布不清晰情况下的识别能力,本文提出了两各将模糊机制引入神经网络的方法-输入模糊化方法和隐层模糊化方法,并在此基础上分别构造了模糊神经网络。实验结果表明,模糊神经网络较好地结合了神经网络和模糊技术的优点,取得了比传统网络更好的识别结果。  相似文献   

8.
黄晓伟  范贵生  虞慧群  杨星光 《计算机工程》2021,47(12):230-235,248
在实际软件项目开发过程中,软件缺陷预测能辅助测试人员找到项目中可能存在缺陷的位置,并通过抽象语法树(AST)获取项目模块中隐藏的结构和语义信息,此类信息有助于提高缺陷预测精度。提出基于重子节点抽象语法树的缺陷预测方法,在提取节点信息时保留节点的类型信息和对应代码语义的值信息,并使用特殊字符串代替没有值信息的节点。通过树链剖分思想将AST分割为重子节点和轻子节点,优先选择重子节点作为序列化向量中的节点,同时利用深度学习网络学习节点序列中的源代码结构和语言实现软件缺陷预测。实验结果表明,与DFS方法相比,该方法在基于注意力机制的循环神经网络深度学习模型上的F1值和AUC值平均提升约3%和4%,具有更好的缺陷预测效果。  相似文献   

9.
针对现有应用层工控协议在模糊测试过程中用例冗余度高、测试效率低和随机性强等问题,提出一种基于改进变异树的测试用例生成方法。该方法将协议样本数据序列进行树结构化,同时提取协议规约中字段优先级信息,并利用其有效地控制树中各节点属性值的变异程度,从而达到降低测试成本、提高测试效率以及增大发掘漏洞几率的目的。实验结果表明,该测试用例生成方法对提高协议模糊测试性能具有显著的优化效果和漏洞检测能力。  相似文献   

10.
首先提出了一种嵌入式编译器测试验证方法,即基于串口传输的变量值验证法,在此基础上设计了一款针对嵌入式C编译器测试的测试用例生成工具ECPAG.该工具根据嵌入式C语法,采用随机算法产生符合规则的任意语法组合,采用概率算法限定各语法要素的生成概率,成功地将基于深度优先搜索的有向图拓扑排序方法应用于函数随机调用中的递归问题的解决.工程应用表明:该自动化工具生成的测试用例集合能够较好地覆盖嵌入式C语法,达到75%以上的块测试覆盖率.  相似文献   

11.
针对中文散文诗歌的自动生成,提出一种基于循环神经网络的时序性文本生成方法.通过现有语料库构建好一个词语集后,首先给定若干关键词,在聚类模型生成的词语集基础上进行关键词扩展生成首句.在确定首句的基础上,利用上下文模型对已生成内容进行压缩和上文特征获取,最后将之前上下文内容传递给递归神经网络模型实现后续句子的生成.该方法中首句生成的过程利用语言模型中的词汇集扩展,并通过上下文模型获取关联实现上下句的映射关系.本文采用BLEU自动评测方式和人工评测方式,建立起较为标准的评测系统,实验结果证实了该方法的有效性.  相似文献   

12.
操作系统具有庞大的用户群体, 因此使得内核漏洞具有极强的通用性。模糊测试作为一种高效的漏洞挖掘方法, 也被应用于操作系统内核, 并且已经取得不错的成果。但是, 目前流行的面向内核的模糊测试模型 Syzkaller 在生成种子时具有一定的盲目性, 无法自动产生具有依赖关系的系统调用, 制约了模糊测试的代码覆盖能力。为解决上述问题, 本文提出并实现了基于种子智能生成的内核模糊测试模型 SyzMix。该模型一方面结合 LSTM(Long Short-Term Memory)神经网络, 使用语法模板, 通过序列化操作和反序列化操作, 能自动生成更多蕴含潜在依赖关系的系统调用序列, 有效提高了种子执行的成功率; 另一方面, 通过静态分析方法获得系统调用显式依赖关系, 通过动态分析方法获得系统调用隐式依赖关系, 并通过上述依赖关系进一步优化种子内部系统调用关系, 结合测试用例的生成策略和变异策略, 显著提高了选择系统调用的准确性。综合上述方法, SyzMix 达到了更高的代码覆盖能力和代码覆盖加速比。为了验证模型的有效性和实用性, 利用 SyzMix 与 Syzkaller 在不同版本的内核中进行测试, 种子执行成功率提高了 16%, 选择系统调用的准确性提高了 88.8%, 内核代码覆盖率提高了 7.87%, 代码覆盖加速比达到了 132.3%。另外, SyzMix 在不同版本的内核中发现了 8 个的未知 bug, 并申请得到 CVE 编号 CVE-2021-45868。  相似文献   

13.
提出一种前馈神经网络盲多用户检测算法,利用前馈神经网络替代原有检测器中的滤波器,通过惩罚函数对约束恒模代价函数进行求解,获得前馈神经网络权值和参数的迭代公式,实现了盲多用户检测。Matlab仿真结果表明,该算法改善了系统的误码率性能,加快了算法的收敛速度。  相似文献   

14.
前馈神经网络的混沌学习方法研究   总被引:4,自引:0,他引:4  
采用混沌优化策略,提出一种前馈神经网络权参数的最优学习方案.由于BP算法优化神经网络权参数时存在收敛速度慢、自身参数选取困难、易陷入局部极小等缺陷.采用混沌变量优化神经网络权参数,具有全局性、快速性、并行性的特点.仿真实验表明采用该方案对强非线性问题的逼近具有精度较高、学习较快的优点.  相似文献   

15.
模糊测试被广泛应用于各种软件和系统的漏洞挖掘中.而模糊测试的效果与其采用的变异策略以及初始种子文件的代码覆盖率有直接的关系.本文提出了一种基于深度学习的种子文件生成方法,分析并学习初始种子文件和其在目标程序中的执行路径之间的关系,最终输出可能覆盖新执行路径的种子文件,从而提高初始种子文件集合的代码覆盖率.我们以PDF阅读器作为目标程序进行了实验,实验结果表明该方法所生成的种子文件保证了良好的通过率,而且明显提高了代码覆盖率.同时实验证明该方法在针对多种PDF阅读器进行模糊测试时都获得了更高的代码覆盖率.  相似文献   

16.
为实现轮毂缺陷检测自动化,该文依据轮毂X射线图像,提出一种基于U-Net卷积神经网络的自动分割的改进方法。将原始U-Net模型的最大池化操作替换为卷积操作,并加入Dropout层对网络进行优化,提升模型可靠性。同时对带有缺陷的轮毂图像做数据预处理,用于训练改进的U-Net模型。结果表明,该网络在复杂轮毂X射线图像的缺陷识别中表现良好,DICE系数为0.8554,SSIM系数为0.9655,识别速度达到3 ms/张;该方法能较好地实现轮毂射线图像缺陷的自动分割,满足无损检测的自动化需要。  相似文献   

17.
姚香娟  巩敦卫  李彬 《软件学报》2016,27(4):828-838
利用遗传算法生成复杂软件的测试数据,是软件测试领域一个全新的研究方向.传统的基于遗传算法的测试数据生成技术,需要以每个测试数据作为输入运行被测程序,以获得个体的适应值,因此,需要消耗大量的运行时间.为了降低运行程序带来的时间消耗,提出一种基于神经网络的路径覆盖测试数据进化生成方法,主要思想是:首先,利用一定样本训练神经网络,以模拟个体的适应值;在利用遗传算法生成测试数据时,先利用训练好的神经网络粗略计算个体适应值;对适应值较好的优秀个体,再通过运行程序,获得精确的适应值.最后的实验结果表明,该方法可以有效降低运行程序产生的时间消耗,从而提高测试数据生成的效率.  相似文献   

18.
针对焊缝X射线图像缺陷识别传统方法的计算量大与准确度差的问题,提出了基于MobileNet的识别方法。首先对样本图像进行预处理和数量上的增强;然后引入MobileNet结构以解决传统深度卷积神经网络中对计算资源要求高的问题,引入残差结构与ELU激活函数以解决原始MobileNet网络中出现的退化问题与权重偏置更新失效的问题,在训练时应用迁移学习方法,解决小数据集容易过拟合与训练效率低的问题;最后,针对相同数据集,与改进前的网络、AlexNet网络和VGG-16网络进行对比,表明该文方法具备更优的识别准确率和相比传统网络拥有更小的计算量,相比传统网络的缺陷识别方法拥有更大的应用范围。  相似文献   

19.
窦慧  张凌茗  韩峰  申富饶  赵健 《软件学报》2024,35(1):159-184
神经网络模型性能日益强大,被广泛应用于解决各类计算机相关任务,并表现出非常优秀的能力,但人类对神经网络模型的运行机制却并不完全理解.针对神经网络可解释性的研究进行了梳理和汇总,就模型可解释性研究的定义、必要性、分类、评估等方面进行了详细的讨论.从解释算法的关注点出发,提出一种神经网络可解释算法的新型分类方法,为理解神经网络提供一个全新的视角.根据提出的新型分类方法对当前卷积神经网络的可解释方法进行梳理,并对不同类别解释算法的特点进行分析和比较.同时,介绍了常见可解释算法的评估原则和评估方法.对可解释神经网络的研究方向与应用进行概述.就可解释神经网络面临的挑战进行阐述,并针对这些挑战给出可能的解决方向.  相似文献   

20.
针对大多数现有基于内容的图像检索方法的性能很大程度上依赖分类器的问题,提出了一种基于模糊隶属度融合神经网络的CBIR方法;首先,利用离散小波变换进行特征提取;然后,使用神经网络计算查询图像的类标签和模糊类隶属度;最后,利用简单与加权距离度量的组合在完整搜索空间中进行检索;在3个纹理类数目、方向和复杂度都不同的数据库上进行实验验证了所提方法的有效性,实验结果表明,相比其他几种较新的纹理图像检索方法,所提方法取得了更好的检索性能。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号