论文部分内容阅读
在软件和IT业飞速发展的今天,越来越多的业务需求需要依靠相应的代码来实现,高质量的代码不仅可以提供良好的用户体验,更可以提升系统架构的安全性与可靠性。而随着代码量越来越大、代码文件变得越来越复杂,传统单机代码缺陷检测工具的测试效率正面临着越来越多的挑战,如测试时间较长、对系统硬件资源需求过大等情况。为了解决传统单机测试系统的测试效率问题,本文设计和实现了一种分布式缺陷检测方法,通过将大型代码工程测试任务拆分为若干部分并分配至集群中的各个节点同时进行测试,来提高对大型代码工程的缺陷检测效率。在进行测试任务的拆分时,本文考虑了文件间多种依赖性带来的问题;在进行测试任务分配方案的设计时,本文考虑了系统可用资源管理、测试任务量化、系统负载均衡等问题。为了解决以上问题,本文设计并实现了基于“基础功能层级”、“业务支持层级”、“核心业务层级”这三个层级的六个模块。“基础功能”层级中“通讯模块”及“数据库模块”分别用来提供系统的通讯、文件传输、相关数据记录等功能;“业务支持层级”中“节点资源管理模块”主要负责管理分布式系统中各节点可用资源;“核心业务层级”中“依赖性处理模块”、“任务量评估模块”、“任务分配模块”分别负责对代码工程进行依赖性处理、对测试任务进行量化、对系统整体进行负载均衡设计。通过六个模块的相互配合,分布式缺陷检测方法得以实现并正常运行。由于不同缺陷检测工具的实现原理与运行环境差别较大,本文在论述一般情况的同时结合某种代码缺陷检测工具展开具体的研究分析。通过该工具进行相关实验,实验结果表明本文提出的分布式缺陷检测方法与传统单机检测方法相比,检测效率有了明显的提高。