您的位置:首页 > 编程语言 > C语言/C++

jenkins下搭建c++持续集成环境

2013-07-31 19:46 489 查看
运行环境为centos 5.8
1.下载tomcat,并解压
2.下载jenkins,把jenkins.war放到tomcat的webapp目录下
3.在tomcat的bin目录下执行./startup.sh
4.下载gcovr
gcovr在解压后的script目录里
5.下载cppncss
cppncss 在bin目录里

6.下载cppcheck
解压后,运行make

7.在jenkins里面下载cppcheck,cppncss, Cobertura(for gcovr),junit(for gtest),github,git插件
在 jenkins的系统设置里面,git的设置里面的安装目录写git程序所在位置,比如git在/usr/local,那么输入/usr/local/git, github的设置选择 Let Jenkins auto-manage hook URLs,输入username和password(github的账号)
在项目的设置中,在 GitHub project设置中设置项目关联的github项目地址https://xxx,在源码管理里面设置git选项,在 Repository URL输入框里输入github项目地址。并勾选 Build when a change is pushed to GitHub
8.集成gtest
下载getst,解压
执行g++ -I${GTEST_DIR}/include -I${GTEST_DIR} -c ${GTEST_DIR}/src/gtest-all.cc
ar -rv libgtest.a gtest-all.o
在makefile里面
-I$(GTESTDIR)/include
-lgtest
-L$(GTESTDIR)

9.主文件

#include<gtest/gtest.h>

intmain(int argc, char* argv[])

{

testing::InitGoogleTest(&argc, argv);

return RUN_ALL_TESTS();//运行所有测试案例

}

测试文件

#include<gtest/gtest.h>

TEST(CAppToolsTest, handleZeroInput)

{

ASSERT_EQ(1, 1);

}

测试输出

./1.out --gtest_output=xml:gtestreport.xml

10.下载tinyxml

运行make

然后运行
ar -rcs libtinyxml.a tinyxmlparser.o tinyxmlerror.o tinyxml.o tinystr.o生成tinyxml库

11.生成各种报告的脚本buildcc.sh

BuildPath=./dist

TinyXML=/home/pc01/Source/c++/ tinyxml

CPPCheckReport=cppcheckreport.xml

CPPCheckApp=/home/pc01/Source/c++/cppcheck-1.59/cppcheck

CPPNCSSReport=cppncssreport.xml

CPPNCSSApp=/home/pc01/Source/c++/cppncss-1.0.3/bin/cppncss

GCOVReport=gcovreport.xml

GCOVRApp=/home/pc01/Source/ gcovr

SRCDir=./src

RunPath=$BuildPath

GTestReport=gtestreport.xml

echo "clean vod server"

make clean

rm *.gcov > /dev/null

rm $CPPCheckReport > /dev /null

rm -r -f ./cppncss

rm $GCOVReport > /dev /null

rm $GTestReport > /dev /null

echo "make vod server"

make buildtest

if [ -r "$BuildPath" ]; then

echo "Make Success"

echo "Make CPPCheck Report $CPPCheckReport"

$CPPCheckApp -v --enable=all --xml -I $TinyXML $SRCDir 2> $CPPCheckReport

echo "Make CPPNCSS Report $CPPNCSSReport"

mkdir ./cppncss > /dev/null

$
CPPNCSSApp

-r -v -x -k -f=./
cppncss
/$CPPNCSSReport $SRCDir

echo "Run Test Program, Make Test Report"

$RunPath/vodservertest.out --gtest_output=xml:$GTestReport > /dev /null

echo "Make GCovr"

$GCOVRApp -x -r . > $GCOVReport

else

echo "Make Fail!"

fi

12.网页访问jenkins

新建job



配置svn



配置构建触发条件



配置构建触发执行动作,将执行生成报告脚本



设置构建后操作







构建效果





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: