李征 作品数:40 被引量:114 H指数:7 供职机构: 北京化工大学信息科学与技术学院 更多>> 发文基金: 国家自然科学基金 教育部“新世纪优秀人才支持计划” 教育部留学回国人员科研启动基金 更多>> 相关领域: 自动化与计算机技术 文化科学 电子电信 更多>>
基于上下文感知并面向多样性的API推荐 被引量:1 2023年 软件开发者在开发过程遇到应用程序编程接口(application programming interface,API)使用问题时,通常希望能够得到有效的API使用模式建议,从而帮助其学习和使用.传统的API推荐方法会挖掘和学习代码库中API的使用知识,然后给开发者推荐与上下文相关的API.然而由于上下文信息表征不够充分,以及推荐列表中冗余项和同质化内容的出现影响了推荐性能.针对这一问题,构建项目和方法与API的API层次调用图(API hierarchy call graph,AHCG)模型以更好地表达API上下文关系,充分利用API结构信息和语义信息来减少冗余项和降低同质化内容被推荐的可能性,进而提出基于上下文感知并面向多样性的API推荐(context-aware based API recommendation with diversity,CAPIRD)方法.该方法中引入相关性度量和关联性度量,最大限度地保留相关结果,同时平衡已选API与候选API的关联性,以尽可能挖掘到合理的初选API列表.最后结合最大边缘相关算法,在标准模式数据集上学习相关性和关联性的最佳权重组合,并进行多样性重排推荐.在2210个项目构成的3类数据集上进行实验并验证推荐性能,实验结果表明,CAPIRD在基于上下文的API推荐场景下能够有效提高推荐性能.在所有数据集的API推荐中,平均精度(mean average precision,MAP)指标平均提升值约9%,在Top-1的推荐中,成功率(success rate)指标平均提升约13%. 赖宝强 李征 赵瑞莲 郭俊霞关键词:图模型 重排 基于PSO的多目标测试用例预优化 随着软件规模的增大,在软件回归测试中,重复执行庞大的全部测试用例集已不再现实.在这种情况下,对测试用例集进行预处理就尤为重要.测试用例预优化是寻找最佳测试用例执行序列的一种技术.在实际的软件回归测试中,基于多目标的测试用... 陈云飞 李征 赵瑞莲关键词:软件工程 多目标优化 粒子群算法 文献传递 基于全同步对覆盖的线程调度序列生成方法 2015年 针对多线程并发程序生成覆盖同步语句的线程调度序列(TSS)效率低问题,提出了一种基于全同步对覆盖(APSC)准则的TSS生成(TGBA)方法。首先,对并发程序中的同步语句,定义了同步对及APSC;然后,给出了一个同步对-线程关联图(SPTG)构建方法;在此基础上,生成满足APSC的TSS;最后,使用JPF检测工具,对4个Java类库并发程序进行了TSS生成实验,并与常用的默认线程调度(DS)、抢占式线程调度(PS)和交叉线程调度(CS)序列生成方法在生成效率方面进行了对比分析。实验结果表明,与DS、CS方法相比,TGBA方法生成的TSS能够覆盖全部同步对;当满足APSC时,与PS方法相比,TGBA方法测试生成所需要的状态数、迁移数至少减少了19 889和44 352,并且生成效率平均提升了1.95倍,因此TGBA方法能够降低状态空间的规模开销,提高TSS的生成效率。 石存沣 李征 郭俊霞 赵瑞莲基于依赖性分析的模型规划 规划是一种基于环境的模型切片技术,研究对象为扩展有限状态机模型,针对一定条件下的环境约束运用可达性分析方法约减模型受影响的部分,进而分析模型在环境约束下的行为,为模型检测和验证提供有效的方法.该方法最大程度约减模型中受影... 王越 李征 尤枫关键词:软件工程 基于多种群遗传算法的可扩展有限状态机测试数据自动生成 被引量:3 2015年 可扩展有限状态机EFSM(Extended Finite State Machine)是目前常用的一种描述软件状态和行为的模型,研究EFSM模型的测试数据自动生成方法具有重要的意义。针对EFSM模型,本文提出一种面向EFSM路径的测试数据自动生成方法,利用多种群遗传算法MPGA(Multi-Population Genetic Algorithm)实现了EFSM测试数据的自动生成。实验结果表明,基于MPGA的EFSM模型测试数据自动生成是确实可行的,并且其测试数据生成效率优于遗传算法(GA)的测试数据生成效率。同时,通过实验分析了MPGA的种群数量、迁移间隔、迁移率、迁移策略等相关参数对EFSM模型测试数据生成效率的影响,得出一种最优的参数组合,对后续进一步利用MPGA进行测试数据自动生成的研究具有一定的指导意义。 周小飞 赵瑞莲 李征关键词:测试数据生成 Web应用前后端融合的遗传算法并行化测试用例生成 被引量:17 2020年 Web应用测试用例生成并行化是提升Web应用测试生成效率的一个有效手段.Web应用的前后端分离、事件驱动等特性,导致传统的并行化技术难以直接应用于Web应用的测试用例自动生成中.因此,如何针对Web应用进行并行化测试用例生成,是一项具有挑战性的工作.将种群并行化计算引入到基于遗传算法的Web应用前后端融合的测试用例生成中,通过线程池及调度逻辑设计、多浏览器进程管理及后端覆盖路径获取,实现种群个体在多浏览器上的并行化执行及基于后端路径覆盖的适应度值并行化计算,以更高效地生成Web应用的测试用例.实验结果表明:相对于Web应用的GA串行化测试用例生成方法,所提的并行化测试生成方法能够更充分地利用系统资源,极大地提升Web应用测试用例的生成效率. 王微微 李奕超 赵瑞莲 李征关键词:WEB应用测试 测试用例生成 遗传算法 并行化 基于机器学习识别偶然正确测试用例 2024年 基于频谱的故障定位(Spectrum-Based Fault Localization,SBFL)技术已被广泛研究,可以帮助开发人员快速找到程序错误位置,以降低软件测试成本。然而,测试套件中存在一种特殊的测试用例,其执行了错误的语句但能输出符合预期的结果,这种测试用例被称为偶然正确(Coincidental Correct,CC)测试用例。CC测试用例会对SBFL技术的性能产生负面影响。为了减轻CC产生的负面影响,提升SBFL技术性能,文中提出了一种基于机器学习的CC测试用例识别方法(CC test cases Identification via Machine Learning,CCIML)。CCIML结合怀疑度公式特征和程序静态特征来识别CC测试用例,从而提高SBFL技术的故障定位精度。为了评估CCIML方法的性能,文中基于Defects4J数据集进行对比实验。实验结果表明,CCIML方法识别CC测试用例的平均召回率、准确率和F 1分数分别为63.89%,70.16%和50.64%,该结果优于对比方法。除此之外,采用清洗和重标策略处理CCIML方法识别出的CC测试用例后,最终取得的故障定位效果也优于对比方法。其中,在清洗策略和重标策略下,错误语句怀疑度值排在第一位的数量分别为328和312,相比模糊加权K近邻(Fuzzy Weighted K-Nearest Neighbor,FW-KNN)方法,定位到的故障数量分别增长了124.66%,235.48%。 田帅华 李征 吴永豪 刘勇关键词:软件测试 故障定位 特征提取 基于EFSM模型不定型切片测试用例自动生成的研究 基于模型的测试是软件测试中一个重要分支,但随着模型规模的增大,测试生成也变得越来越困难.扩展有限状态机(EFSM)模型是一种广泛应用的模型,它是对有限状态机(FSM)模型的扩展.对EFSM模型的测试主要包含两个部分:测试... 苏宁 郭俊霞 李征 赵瑞莲关键词:软件测试 有限状态机模型 切片技术 文献传递 基于进化优化的复杂软件测试数据自动生成理论与方法 巩敦卫 罗钟铉 姚香娟 李征 赵瑞莲 江贺 姜淑娟 玄跻峰 张艳梅 张婉秋 该项目是计算机、自动化和应用数学等学科有机交叉、新颖且富有挑战性的研究方向,有非常明确的产业需求. 对于复杂软件的测试数据生成问题,传统的随机法和基于形式分析的方法往往难以奏效.采用进化算法生成复杂软件的测试数据,是近年...关键词:关键词:软件测试 基于图卷积神经网络的函数自动命名 被引量:1 2021年 函数自动命名技术旨在为输入的源代码自动生成目标函数名,增强程序代码的可读性以及加速软件开发进程,是软件工程领域中一项重要的研究任务.现有基于机器学习的技术主要是通过序列模型对源代码进行编码,进而自动生成函数名,但存在长程依赖问题和代码结构编码问题.为了更好的提取程序中的结构信息和语义信息,本文提出了一个基于图卷积(Graph Convolutional Network,GCN)的神经网络模型—TrGCN(a Transformer and GCN based automatic method naming).TrGCN利用了Transformer中的自注意力机制来缓解长程依赖问题,同时采用Character-word注意力机制提取代码的语义信息.TrGCN引入了一种基于图卷积的AST Encoder结构,丰富了AST节点特征向量的信息,可以很好地对源代码结构信息进行建模.在实证研究中,使用了3个不同规模的数据集来评估TrGCN的有效性,实验结果表明TrGCN比当前广泛使用的模型code2seq和Sequence-GNNs能更好的自动生成函数名,其中F1分数分别提高了平均5.2%、2.1%. 王堃 李征 刘勇