一种自动化软件系统质量检查和快速迭代方法技术方案

技术编号:20992437 阅读:74 留言:0更新日期:2019-04-29 22:27
本发明专利技术公开了一种自动化软件系统质量检查和快速迭代方法,首先,开发人员提交代码至待审核分支,当监控服务器检测到该分支有代码变动时,触发静态分析任务,进行代码自动评审;在代码审查通过后,自动分支合并到主干并触发单元测试和在线编译任务;在单元测试和在线编译没有问题时,进行打包和部署,同时启动自动化系统软件测试;最后将通过的测试的软件产品进行发布。该方法提高了软件研发的自动化水平;降低了人工评审的复杂度;建立了多种语言的自动测试框架,减少了人工参与成本,节省了人力资源;建立了软件系统研发各阶段的持续反馈机制,出现问题,及时反馈,实现了工程化的软件质量控制。

A Quality Checking and Fast Iteration Method for Automated Software Systems

The invention discloses an automatic software system quality checking and fast iteration method. Firstly, the developer submits code to the branch to be audited. When the monitoring server detects that the branch has code changes, it triggers the static analysis task and automatically reviews the code. After the code review is passed, the automatic branch is merged into the trunk and triggers unit testing and online compilation tasks. When there is no problem with unit testing and online compilation, package and deploy, and start the automation system software testing at the same time. Finally, the software products that will be tested will be released. This method improves the automation level of software development, reduces the complexity of manual evaluation, establishes a multi-language automatic testing framework, reduces the cost of manual participation and saves human resources, and establishes a continuous feedback mechanism for each stage of software system development, and achieves the quality control of Engineering software.

【技术实现步骤摘要】
一种自动化软件系统质量检查和快速迭代方法
本专利技术专利属于软件开发与测试领域,面向复杂软件系统研制质量管理和效率需要,提供了一种自动化软件质量检测和快速迭代方法,支持软件的协同开发、代码质量管理、持续集成与测试。
技术介绍
随着软件设计技术的更新,软件或系统规模的扩大,软件产品复杂度不断提高,传统“模块开发-集成产品”的研发模式导致很多问题集中暴露在产品集成或发布阶段;与此同时,复杂软件系统在开发集成、测试以及产品迭代更新等方面越来越困难,耗时长且代价较高,并且难以保证产品质量和交付周期。持续集成是软件开发的一个重要实践[1,2]。持续集成是一种敏捷的开发方式[3],持续集成的引入,降低了软件开发的风险,提高软件开发效率,提高代码质量,使项目管理人员更好地了解项目的开发进度。每次集成过程包括编译、构建、部署、测试、发布等多个过程,每一个过程都可以进行优化和改进。张兆晨,罗铁坚[4]搭建了一个基于Docker容器的持续集成的构建系统,将持续集成环境容器化,可以大大提升软件开发效率。张高毓,张建强[5]提出一种提升软件产品服务质量的自动构建系统,实现软件产品的自动打包,并保证安装程序的本文档来自技高网...

【技术保护点】
1.一种自动化软件系统质量检查和快速迭代方法,其特征在于,包括以下步骤:(1)开发人员增量开发结束后将代码提交至源码服务器的待审核分支;(2)CI服务器通过触发检测插件检测到审核分支有代码变动时,自动触发静态分析任务,对当前提交的代码进行质量分析,得到质量分析结果;(3)根据预先设定的质量阀Qdefine,并对比本次检测的结果Qstatic,如果Qstatic满足Qdefine的判定条件则表示通过质量评审,此时通过插件实现自动评审,将本次提交自动合并至主干,并触发下一步任务;否则,中止后续步骤,并将结果反馈给开发人员;(4)根据项目的开发语言,选择不同的单元测试框架JUnit或CppUnit,...

【技术特征摘要】
1.一种自动化软件系统质量检查和快速迭代方法,其特征在于,包括以下步骤:(1)开发人员增量开发结束后将代码提交至源码服务器的待审核分支;(2)CI服务器通过触发检测插件检测到审核分支有代码变动时,自动触发静态分析任务,对当前提交的代码进行质量分析,得到质量分析结果;(3)根据预先设定的质量阀Qdefine,并对比本次检测的结果Qstatic,如果Qstatic满足Qdefine的判定条件则表示通过质量评审,此时通过插件实现自动评审,将本次提交自动合并至主干,并触发下一步任务;否则,中止后续步骤,并将结果反馈给开发人员;(4)根据项目的开发语言,选择不同的单元测试框架JUnit或CppUnit,调度分布式构建节点,执行单元测试和在线构建任务,依据单元测试质量UTQ及构建是否成功决定是否进入步骤(5),否则中止后续步骤,并将结果反馈给开发人员;(5)将构建成功的产物进行归档存入制品库,自动执行部署任务,调度分布式分布节点,根据项目类型通过部署工具将其部署至目标测试环境或生产环境中,然后自动触发步骤(6);(6)选择不同的测试框架完成自动化软件测试,并将测试结果发送给相关人员;(7)自动化测试通过后,将本次提交合并至发布分支,进行产品发布。2....

【专利技术属性】
技术研发人员:岳才杰刘亮陆茜茜陶家顺费菲
申请(专利权)人:中国科学院电子学研究所苏州研究院
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1