综述:基于知识图谱引导的变更驱动代码集成路径覆盖测试
【字体:
大
中
小
】
时间:2025年09月28日
来源:Expert Systems with Applications 7.5
编辑推荐:
本文提出了一种基于知识图谱(Knowledge Graph)引导的变更驱动代码集成路径覆盖测试方法。通过静态分析硬件驱动代码构建知识图谱,挖掘与变更代码关联的实体形成集成目标路径(Integration Target Paths),并采用智能优化算法生成测试用例。实验表明该方法在测试用例生成效率(Efficiency)和有效性(Effectiveness)上分别提升19.08%-24.54%和9%-23%,且知识图谱与路径准确率达100%。
当前研究主要集中于单元函数内的基目标路径(Basis Target Path)获取方法,包括基于控制流图(Control Flow Diagram)和智能优化算法两类技术。知识图谱在软件测试中的应用多集中于代码关联关系挖掘,但在驱动代码测试领域尚未形成系统方法。测试用例生成方面,遗传算法(Genetic Algorithm)和粒子群优化(Particle Swarm Optimization)等智能算法已被用于基路径覆盖测试,但缺乏面向集成路径的优化模型。
该方法包含三个核心阶段:首先通过静态分析驱动代码提取实体(如函数、变量)及关系(如调用、依赖),构建三元组形式的知识图谱;其次以变更代码为起点,根据预设的起始/终止实体及关系挖掘优先级,生成贯穿多个单元函数的集成目标路径;最后将测试用例生成问题建模为路径覆盖优化问题,采用智能优化算法求解。
在开源驱动代码上的实验表明:知识图谱构建准确率达100%,集成路径生成正确率100%。与随机测试、基于基路径的测试相比,本方法在测试用例生成效率(Efficiency)提升19.08%-24.54%,缺陷检测有效性(Effectiveness)提高9%-23%。实验选取的代表性驱动代码包括传感器控制、芯片指令处理等典型硬件操作模块。
实验威胁主要来自三方面:所选开源驱动代码的局限性可能影响结论普适性;评估指标(如路径覆盖率、缺陷检测率)的设定可能忽略实际应用场景;智能算法参数(如种群大小、迭代次数)的配置对结果存在影响。通过多项目验证和参数调优可在一定程度上缓解这些威胁。
Conclusions and future work
该方法通过知识图谱引导的集成路径测试,有效解决了变更驱动代码的全局风险检测问题。未来工作将拓展知识图谱的实体类型(如并发操作、中断处理),研究跨平台驱动代码的测试用例生成,并探索深度学习技术在路径优先级排序中的应用。
CRediT authorship contribution statement
Baicai Sun: 概念化、资金获取、方法论、原稿撰写;Miao Rong: 验证、数据分析;Gaige Wang: 审阅与监督;Dunwei Gong: 方法论、资源提供。
Declaration of competing interest
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号