基于qac+qa+svn+jenkins的可持续集成平台
prqa公司的qac/c++工具作为业界优秀的代码静态分析工具,能够方便、快捷、有效地改善代码质量,在软件研发阶段迅速发现代码中存在的潜在缺陷,大大减少动态测试过程中所发现的bug和修复bug所耗费的成本。随着众多用户在越来越熟练地使用qac/c++产品提高软件质量的同时,也逐渐遇到了一些深层次的管理问题。
传统静态分析流程如下:
存在问题:
• 如果配置管理工具对检出进行锁定,那么当工程师检出源码,进行集成分析时,其他工程师就必须等待检入之后才能检出,进行自己当天编写代码的分析工作。如何分配检出时间?
• 如果配置管理工具对检出不锁定,所有工程师的代码在配置库集成之后,很难保证这些代码不发生冲突。
• 开发工程师添加或修改代码后,未进行本地分析直接上传。不知何时才能发现新增或修改代码中存在的缺陷。
• 开发工程师添加或修改代码后,需要进行本地分析,但是qac/c++的浮动license不足以满足多个工程师分析代码需求,排队等待分析太耗时。
这些深层次的研发管理问题给qac/c++工具带来了新的挑战。prqa公司和恒润通过不断努力,成功搭建基于qac+qaverify+jenkins+svn的可持续集成平台。
持续集成平台静态分析流程:
该平台将svn与分析工具qac紧密结合在一起,工程师将通过本地分析的源码上传至svn库中即可。不论工程师是否进行了本地分析,平台都定时扫描svn库,一旦发现源码库有变动,就会对整个库中代码进行qac分析和qav上传工作,并将分析结果发至关键人邮箱(如果分析未达到目标要求的话)。通过整个工程的分析工作,能够尽早尽快的发现代码集成后产生的缺陷。完美解决整体分析工程的同时,将人从重复机械的工作中解脱出来,为企业节约成本投入。并且平台的定时分析功能实现分析工作与工程师的工作错峰进行,这样便可以完美解决license冲突问题,节省工程师宝贵时间。
该平台适用于所有嵌入式代码开发的企业,成功解决众多用户在使用qac/c++过程中遇到的上述管理问题,为软件研发过程中的代码质量保障工作带来了更大的便利,使用户能够更加快捷、有效地提高软件代码的质量!