设置git源码管理

内网搭建GitLab源码托管平台,如下设置,使用的是http方式,点击Add添加gitlab用户名和密码。

立即执行构建会出现以下信息

表示从gitlab拉取代码成功,clone路径是 /root/.jenkins/workspace/uart

cppcheck静态代码分析

在构建服务器上安装cppcheck

sudo apt install cppcheck

在构建输入以下指令

cppcheck --enable=all --xml-version=2 ./ 2> cppcheck.xml

以上./是指当前目录,将检查以xml形式输出到cppcheck.xml文件

安装cppcheck插件

添加构建后cppcheck插件

设置cppcheck插件

输出结果

gcovr代码覆盖率分析

安装gcovr

sudo apt install gcovr

安装Cobertura插件

修改Makefile文件

在Makefile文件添加 -fprofile-arcs -ftest-coverage -fPIC 编译选项

Target=epoll_key
HomeDir = .
Objects=$(HomeDir)/Epoller.o $(HomeDir)/HotKeyService.o $(HomeDir)/main.o

CC=g++
Compile=$(CC) -fprofile-arcs -ftest-coverage -fPIC
Link=$(CC) -lstdc++
INCLUDE = -O3 -D_LINUX -DLINUX -DDEBUG
INCLUDE += -I./
INCLUDE += -I$(ServiceDir)/

LIB=-Wall -lz -lrt -ldl -lpthread -fprofile-arcs -ftest-coverage -fPIC

main : $(Objects)
$(Link) $(Objects) $(LIB) -o $(Target)

.cpp.o :
$(Compile) -c -o $@ $< $(INCLUDE)
.c.o :
$(Compile) -c -o $@ $< $(INCLUDE)
clean:
rm $(Objects)

添加构建指令

chmod +x epoll_key
./epoll_key
gcovr -x -r "./" --output "./coverage.xml"


执行./epoll_key会生成gcda和gcno文件,将覆盖检查输出到coverage.xml文件

配置Cobertura插件

构建输出

转载于:https://www.cnblogs.com/QUSIR/p/8550148.html

jenkins搭建cc++自动化构建相关推荐

  1. 使用Jenkins配置iOS自动化构建工具

    关于iOS自动化构建其实并不复杂,通过一些简单的Git与Xcode指令,加上UI,我们自己也可以动手编写一款自动化构建工具.这在之前的博客中也有涉及,有兴趣的朋友可以在如下地址找到这篇博客: 自己动手 ...

  2. 实践Jenkins集成Cobertura自动化构建SpringBoot工程

    在每个系统上线正式发布之前,开发同事对其中功能点进行自测,测试同事根据前期设计的测试用例进行功能测试的都是保障系统可靠稳定运行的重要前提.但是,系统上线后故障还偶有发生,那么如何才能将系统代码质量提高 ...

  3. Pytest + Selenium + Allure + Jenkins搭建简单自动化框架

    1.环境搭建 1.1 安装python,配置环境变量 下载地址:https://www.python.org/downloads/下载需要的版本(3.7以上) 1.2安装pycharm 下载地址:ht ...

  4. Jmeter+ant+jenkins 实现接口自动化构建

    目录 引言 一.安装并配置环境 1.下载安装jdk1.8并且配置环境变量 2.下载ant包 二.安装验证 1.拷贝jar包 2.修改jmeter报告输出格式 3.创建demo文件夹 4.建立build ...

  5. linux maven自动构建,Centos7.3+Jenkins+Git+Maven 自动化构建部署项目

    第一步 禁止 SELINUX 访问控制 修改配置之前先备份(良好习惯) sudo cp /etc/selinux/config /etc/selinux/config.bak 备份后,修改selinu ...

  6. 手把手0基础项目实战(一)——教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)...

    本文你将学到什么? 本文将以原理+实战的方式,首先对"微服务"相关的概念进行知识点扫盲,然后开始手把手教你搭建这一整套的微服务系统. 项目完整源码下载 https://github ...

  7. 手把手0基础项目实战(一)——教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)......

    手把手0基础项目实战(一)--教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)... 原文: 手把手0基础项目实战(一)--教你搭建一套可自动化构 ...

  8. 0基础教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)

    2019独角兽企业重金招聘Python工程师标准>>> 本文你将学到什么? 本文将以原理+实战的方式,首先对"微服务"相关的概念进行知识点扫盲,然后开始手把手教你 ...

  9. git log 获取构建时间_Docker 运行 Jenkins 自动化构建 .NET Core 项目

    (给DotNet加星标,提升.Net技能) 转自:ZKEASOFTzkea.net/codesnippet 目标 当代码提交到GitHub后,自动生成构建项目并部署到服务器. 接下来介绍一下如何在容器 ...

最新文章

  1. docker java镜像_Docker JDK镜像
  2. Linux优化不知如何下手?那你的看看这篇文章了
  3. 如何以战斗为基础驱动玩家追求更多角色(一)
  4. PaddlePaddle训练营——公开课——AI核心技术掌握——第2章机器能“看”的现代技术
  5. 点击关闭按钮时缩小到系统任务栏
  6. 彻底弄懂响应式设计中的em和rem
  7. x轴z轴代表的方向图片_游戏中到底是Z轴朝上还是Y轴朝上?
  8. Installation of Apache HTTPD
  9. 写了 20-50 年的代码,才明白的那些真理
  10. Android之仿网易V3.5新特性
  11. java直接引用_Java虚拟机 - 符号引用和直接引用理解
  12. LeetCode 3sum 问题
  13. python判别性别的代码_python如何实现性别识别 python实现性别识别代码示例
  14. linux中shell数组的使用和建立
  15. es6之模块化(module)--绝对能看懂
  16. 有关likely和unlikely??
  17. 小学计算机图形组合教案,小学三年级信息技术下册组合图形名师公开课优质教案人教版...
  18. 推荐系统(Recommendation System )介绍
  19. 大数据Top K问题
  20. 逻辑英语语法电子版_11920671英语逻辑语法上.pdf

热门文章

  1. Iterator(迭代器)接口 --对象循环遍历
  2. 一款由css3和jquery实现的响应式设计导航
  3. 企业里实现代码自动部署、回滚的解决方案——Caphub
  4. nagios不能 发送飞信报警一例
  5. .NET框架程序设计-.NET框架开发平台的体系架构概览(.NET程序本质)
  6. 【Python自学笔记】10个爬虫入门实例,附源码与注释
  7. oracle每天一次差异备份,Oracle的差异增量备份和累积增量备份(zt)
  8. 实例代码分享Python实现Linux监控
  9. mask属性是css3的吗_CSS mask-image属性详细介绍(小结)
  10. 3 css 奖品出现弹出动画_【技术】nuxt中引入wow和animate.css 页面随滚动条出现动画...