最近研究了下 jenkins,将自己所了解的整理个文档,有不足的请大伙多指教。
先说下项目在 jenkins 上具体的开发、测试、部署流程
- 当开发新功能或修改 bug 时,一般是在分支上执行;当开发自测通过后会 merge 到 master.
- 当 master 有变动时,会自动触发 build 构建任务(当然也可以定时触发),执行集成的单元测试(目前弱化了单元测试),代码质量静态检测,若 build 不通过则触发邮件给 developer.
- 若编译和测试环境不一致,或为了减轻主服务器的压力,可创建子节点服务执行 test 任务,进行自动化冒烟测试,若测试不通过则触发邮件给 tester.
- 若冒烟测试通过,则进行人工测试,若测试通过则手动触发 deploy 任务部署到生产服务器上进行相关测试.
接下来说下项目在 jenkins 上具体的应用
jenkins 的基础配置
环境搭建
- JDK 下载与配置环境变量
(win 运行 cmd,输入
java -version
查看是否输出 java version,如果输出成功则证明配置 JDK 正确)
- SDK 下载与配置环境变量
(win 运行 cmd,输入
adb start-server
查看是否成功启动 adb server,如果成功则证明 SDK 配成功)
- GIT 下载与配置环境变量
(win 运行 cmd,输入
git
如果出现 git usage 说明则证明配置成功)
- Gradle 下载与配置环境变量
(win 运行 cmd,输入
gradle –v
如果出现 gradle 版本说明则证明配置成功)
- Tomcat 下载与配置环境变量
(win 运行 cmd,输入
startup
如果启动了 tomcat 窗口就表示配置成功了。启动 Tomcat 后可以在浏览器中输入:localhost:8080)
Jenkins 安装配置
- https://jenkins.io/download/
下载 war 包,然后放置到 tomcat 安装目录下(apache-tomcat-9.0.16\webapps)
输入:http://192.168.1.176:8080/jenkins 即可启动 jenkins
- 系统管理—插件管理:根据需要安装插件 Gradle plugin、Android Lint Plugin、Email Extension Plugin、Role-based Authorization Strategy、Build Name Setter Plugin、Extended Choice Parameter Plug-In、Build Pipeline Plugin、HTML Publisher plugin、JaCoCo plugin,Git plugin 等插件
- 系统管理 - 全局工具配置:JDK,Git,Gradle
- 系统管理 - 系统设置:配置 SDK
job 的创建以及配置(buld-1,test-2,deploy-3)
一:用户权限管理
二:创建子节点服务
三:创建 Pipeline 视图
四:build-1 配置
- 创建一自由风格的 job:build-1
- 参数化构建,此处是将 build-name 参数化,目的便于知道此项目是由谁构建的.
- 构建过程
- 构建后操作
- 自动触发下一 job
五:test-2 配置
- 创建一自由风格的 job:test-2
- 参数化构建,此处是自由选择测试用例
- 构建过程
- 构建后操作
六:deploy-3 类似略过
七:构建后的结果
Pipeline 视图:
代码静态监测结果:
testNG report: