静态代码扫描持续构建(Jenkins)

前提 条件

  1. 已正确安装、配置Jenkins环境,并装有 Gradle 插件、HTML 插件、SVN 插件等。如下图所示:
  2. 已正确安装、配置android sdk,在cmd窗口输入命令"android -h",回车

配置步骤

  1. 打开Jenkins,新建一个job,输入项目名称,选择"构建一个自由风格的软件项目"

  2. 点击"OK",将弹出 job 的配置项,General 这一项,主要是简单介绍下本项目,这里只在"项目名称"和"描述"做简单描述,如下图所示:

  3. 源码管理,这里选择的是 SVN,填写的两项是:待测试 app 源码路径、svn 账户密码,剩余项为系统默认,如下图所示:

  4. 构建触发器,这里配置的是:每隔 60 分钟,检查一下代码是否有更新,有更新的话,开始触发静态扫描操作,如下图所示:

  5. 构建环境,这里不做配置

  6. 构建,点击增加构建步骤,选择 "Invoke Gradle script"

    选择 "Use Gradle Wrapper",Task 的命令为 "lint",执行脚本的目录精确到待测试 app 源码目录,gradle 文件为及源码目录下的 build.gradle,其他选项默认配置。如下图所示:

  7. 构建后的操作,这里配置输出 html 测试报告和邮件通知相关人员,点击"增加构建后操作步骤",选择 "Publish HTML reports"
    这里主要配置测试报告 html 的所在路径及 html 的主页(lint-result.html),其他项为默项
    接下来是配置邮箱,首先是在 jenkins 全局中对邮箱进行配置,jenkins 主界面点击"系统管理"------"系统设置",编辑最下方的邮件通知,如图所示:

    主要填写的信息有,SMTP 服务器、用户名和密码,最后可以选择"通过发送测试邮件测试配置",填写收件地址,测试配置是否正确。接下来配置 "Editable E-mail Notification" 插件信息,这里主要配置邮箱 SMTP 服务器,其他信息根据不同的项目做不同配置(邮件主题、邮件格式、邮件内容、收件人、触发器等),如下图所示:

    然后,在刚才项目中,点击"增加构建后操作步骤",选择 "Editable Email Notification",填写邮件的相关信息,包括:收件人地址、邮件内容格式、邮件内容、附件、是否添加构建日志、触发器等。如下图所示:
    点击右下角的 "Advanced Settings",可配置触发器,如下图所示
    这里的邮件发送触发条件是:静态代码扫描构建成功后,发送测试报告到指定的收件人邮箱,至此静态代码扫描持续集成完成。

相关推荐
这个DBA有点耶13 分钟前
innodb_autoinc_lock_mode的三种模式:批量插入时自增锁的持有逻辑与调优
数据库·架构·代码规范
flytalei4 小时前
从 Jenkins 到 Argo CD:搭建一条完整的 GitOps 实战链路
运维·jenkins
你看我名字6 小时前
LAMP 架构演练:从云主机准备到 Apache、PHP、MySQL 上线验证
运维·ci/cd·架构·kubernetes·jenkins
成为你的宁宁7 小时前
【基于 SSH 与 JNLP 协议的 Jenkins 分布式构建方案】
分布式·jenkins
这个DBA有点耶1 天前
连接数没满,应用却连不上数据库——TCP backlog溢出与somaxconn的隐藏限制
数据库·mysql·代码规范
这个DBA有点耶2 天前
从症状到根因:数据库监控指标的分层方法与静态/动态阈值策略
数据库·mysql·代码规范
这个DBA有点耶2 天前
DELETE没删多少数据,表却越来越大——InnoDB删除空洞与页合并失效的根因
数据库·mysql·代码规范
深圳老胡2 天前
RTX 与其他 RTOS 操作系统的差异及优缺点分析
笔记·stm32·单片机·代码规范
伟大的车尔尼3 天前
代码规范性与不同场景的要求
代码规范·代码·规范性
深圳老胡3 天前
C语言实现C++面向对象程序设计示例
笔记·stm32·单片机·代码规范