目录
一、持续集成
持续集成(ContinuousIntegration,简称CI),又被称为持续构建(ContinuousBuild),是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
持续集成流程
![](https://i-blog.csdnimg.cn/blog_migrate/4b7298fe8af52750a1629aff585b8e49.jpeg)
持续集成的优点
- 降低集成风险
- 保障代码质量
- 改善测试质量
- 等等...
持续集成工具
二、Jenkins环境搭建
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成的可视化Web工具,用于监控持续重复的工作(编译、打包、测试、发布),旨在提供一个开放易用的软件平台。简单的说就是,持续的软件版本发布/测试项目和监控外部调用执行的工作。
- 搭建Java环境,jdk5.0+
- 安装Tomcat6.0+
- 安装Jenkins
①第1、2步自行google,这里不讲。第3步,打开Jenkins官网(https://jenkins.io/download/)下载war包。
②将jenkins.war文件放在tomcat/webapps目录下。
③执行java -jar jenkins.war得到解锁密码,初始解锁密码会存在
C:\Users\用户名\.jenkins\secrets\initialAdninPassword。
④启动tomcat,浏览器中打开:http://localhost:8080/jenkins/ 输入解锁密码
⑤安装插件。选第一个,安装推荐的插件。
⑥创建管理员用户。邮箱地址在后面发送邮件需要用到。
⑦重启tomcat,重新打开http://localhost:8080/jenkins/ ,输入管理员账号密码。
到这一步,Jenkins配置基本已经完成。
三、Android自动打包
在搭建Android自动打包环境之前先做一些配置。
①配置JDK、Gradle
主目录→系统管理→全局工具配置→JDK
主目录→系统管理→全局工具配置→Gradle
②配置发件人
主目录→系统管理→系统设置
授权码的获取,登录邮箱,在设置→POP3/SMTP/IMAP
③安装版本控制插件(我这里用到的是Mericurial,若是使用Git或者Subbersion的,由于上面“安装推荐的插件”已经安装了,这一步可以跳过。)
主目录→系统管理→插件管理→可选插件。搜索Mericurial发现找不到这个插件。
自行去 http://mirror.xmission.com/jenkins/plugins/ 下载
主目录→系统管理→插件管理→高级→上传插件。上传插件后配置Mericurial。
主目录→系统管理→全局工具配置→Mericurial
④配置项目
主目录→新建任务→构建一个自由风格的软件项目
Genneral
源码管理
构建触发器
定时构建是指时间到就会触发,轮询SCM是指时间到拉取代码,代码改变时触发。语法是* * * * *(5颗*用空格隔开)。
第1颗*表示分钟,取值0~59
第2颗*表示分钟,取值0~23
第3颗*表示分钟,取值1~31
第4颗*表示一个月的第几天,取值1~31
第5颗*表示一周中的第几天,取值0~7,其中0和7代表的都是周日
构建
增加构建步骤→Invoke Gradle script
构建后操作
增加构建后操作步骤→成品归档
增加构建后操作步骤→Editable Email Notification
四、Android自动测试
这里的测试,指的是单元测试。保持上面的配置,在构建栏添加测试指令。
构建后操作栏添加测试报告
五、集成SonarQube
SonarQube是一个开源的代码分析平台,用来持续分析和评测项目源代码的质量。安装SonarQube Scanner for Jenkins插件(Jenkins安装插件的方法上面有说,不明白的翻上去看。)
接下来需要配置插件。
①主目录→系统管理→系统设置→SonarQube servers。
②令牌Server authentication token的获取方式如下。需要先安装SonarQube登录(初始账号密码是admin)。
③主目录→系统管理→全局工具配置→SonarQube Scanner。
④项目中配置构建栏添加Execute SonarQube Scanner
最后看一下构建后的效果图
公司的技术分享,本想写PPT的,由于不好排版,故有了以上的内容。第一次写博客,勿喷。