历时2个月,持续化集成和代码质量工具调查进入了尾声阶段,环境基本搭建完毕,在此写一个总结报告。
一.关于持续集成(CI)的理解
为什么要有持续化集成工具?一切make管理,不就好了吗?
我的理解是,假设你有一个项目,你可以自由的make,自由的检查代码的质量。
但是,我们需要更强的功能,例如,定时编译,统计分析编译结果,用户访问控制等,这样我们就需要一个工具来管理,这就是持续化集成管理工具。
二. 关于maven,make,ant
我的blog中已经有详细的讲述,这里再简单罗嗦一下。maven,ant,make都是进行build管理的工具,只是人们为了更方便的build,而发明的不同的工具
POM.xml文件时maven使用的配置文件,就像make使用的makefile一样。在jenkins中,可以调用maven,也可以调用ant,更可以调用make
三.关于jenkins的插件
POM.xml是maven调用的,所以这里面对于插件的描述,都是maven管理的,实现某个功能。
Jenkins调用的插件可能直接实现调用某个功能软件,也可能只是对于maven调用的软件的生成的结果的分析,在jenkins中呈现出来
四. 静态分析工具
For c/c++ : astyle,cpplint,nsiqcppstyle,cppcheck,cccc,simian,klocwork(收费)
For java: checkstyle,findbugs, cobertura,cccc,klocwork(收费)
五. 单元测试
For c/c++ : cpptest,cppUnit,cUnit,klocwork(收费)
For java: Junit,klocwork(收费)
本文写的自己的感受,可能有些地方错误,敬请指正。