Jenkins与GitHub等工具搭配实现持续集成测试

配置Jenkins集成GitHub

Jenkins 的下载与安装

Windows 版本的 Jenkins 可以从官方网站(jenkins-ci.org)中下载,Jenkins集成GitHub需要较高的版本,推荐选择最新的稳定版本。
打开安装包后按照提示即可完成安装。
Jenkins 基于 Web 服务,以服务的方式启动,默认访问端口为 8080。安装成功后,在 cmd 中进入 Jenkins 的安装目录,然后输入以下命令以 启动该服务:
在这里插入图片描述
如果想关闭 Jenkins,则只需在网址栏输入 http://localhost:8080/exit,点击确认后,即可
关闭 Jenkins:
在这里插入图片描述
在本地访问的地址是 http://localhost:8080/。客户端远程访问时,替换 localhost 为服务器 IP 地址即可,即 http://192.104.103.101:8080/。启动后,进入 Jenkins 主界面,某些版本需要通过输入管理员账户进入主界面
主界面如图所示:
在这里插入图片描述
接着安装GitHub相关插件
在这里插入图片描述
为了让Jenkins可以连接到自己的GitHub账号
需要先去GitHub新建立一个token,并授予权限gist,ropo,user
在这里插入图片描述
然后在Jenkins里新建凭据,注意设置类型为Secret text,然后在Secret处输入token
在这里插入图片描述
建立凭据成功
在这里插入图片描述
同时需要在Jenkins设置中指定GitHub Server将刚刚建立好的凭据放入,以便连接到GitHub的API
在这里插入图片描述
为了实现Jenkins对GitHub项目的自动拉取和更新,并且进行自动部署,在配置GitHub Server时将hock勾选上,同时在GitHub的项目中配置好hock
新建一个Repository,并配置hock
在这里插入图片描述
Jenkins中新建任务,选择类型为Freestyle project
在这里插入图片描述
选择GitHub项目,将项目.git的url填入
在这里插入图片描述
源码管理设置为git,同时输入项目.git的url与配置,并且设置好GitHub账号登录的证书,证书可以通过新建立GitHub账号凭据实现,最后指定分支
在这里插入图片描述
构建触发器,勾选Web Hock,启用GitHub的hock功能,同时配置轮询,监听代码变动实现实时更新
在这里插入图片描述
新建任务完毕
在这里插入图片描述
新建任务后稍等一会即可看到项目进行自动构建,并将GitHub项目中存在的文件拉取过来
在这里插入图片描述
下面进行测试,验证GitHub项目是否配置成功,能否通过hock实现Jenkins中工作空间的自动更新
在本地新建一个text.txt文件,并push到GitHub项目仓库,可以看到GitHub仓库中已经显示text.txt文件
在这里插入图片描述
Jenkins中正在进行构建
在这里插入图片描述
构建完毕,至此可以认为Jenkins + GitHub的集成环境配置完成

使用 Maven 作为构建工具进行持续集成

向GitHub远程仓库上传maven项目
在Jenkins中安装maven相关插件
在这里插入图片描述
在Jenkins中配置好jdk及maven版本,不然无法添加maven任务

在这里插入图片描述
创建maven任务
在这里插入图片描述
选择GitHub项目,将项目.git的url填入
在这里插入图片描述
源码管理设置为git,同时输入项目.git的url与配置,并且设置好GitHub账号登录的证书,证书可以通过新建立GitHub账号凭据实现,最后指定分支
在这里插入图片描述
构建触发器,勾选Web Hock,启用GitHub的hock功能,同时配置轮询,监听代码变动实现实时更新
在这里插入图片描述
配置maven
在这里插入图片描述
新建任务完毕
稍等一会,就可以看到Jenkins自动从GitHub仓库拉取maven项目,项目构建完毕
在这里插入图片描述
可以在控制台输出看到下载了maven相关依赖
在这里插入图片描述

基于Blue Ocean的 Pipeline

Jenkins中通过安装Blue Ocean插件,可以快速创建 Pipeline, Pipeline将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程,形成流水式发布,构建步骤视图化
如图所示,创建GitHub项目的流水线
在这里插入图片描述
可创建流水式集成测试方案,会按照流水线进行一步步测试
在这里插入图片描述
在保存后Jenkins会自动在GitHub远程仓库里创建 Jenkinsfile然后将刚刚所设置的测试步骤转化为代码,然后Jenkins会开始执行测试
在这里插入图片描述
通过 Pipeline可以很方便实现流水式的持续交付,执行阶段通过视图一目了然

邮件系统集成

在邮箱中开启SMTP服务,然后在Jenkins设置中配置SMTP服务器
不同邮箱的SMTP服务代码不同,需要查阅对应服务代码
在这里插入图片描述
如图所示配置成功
在这里插入图片描述
对 Extended E-mail Notification进行配置
在这里插入图片描述
在任务的设置中开启构建后操作
在这里插入图片描述
其中邮件内容(Default Content)可以参考如下内容进行填写:

(本邮件是程序自动下发的,请勿回复!)
项目名称:$PROJECT_NAME
构建编号:$BUILD_NUMBER
svn 版本号:${SVN_REVISION}
构建状态:$BUILD_STATUS
触发原因:${CAUSE}
项目地址:${Jenkins_URL}job/${PROJECT_NAME}
文件签入记录:${Jenkins_URL}job/${PROJECT_NAME}/changes
本次构建地址:${Jenkins_URL}job/${PROJECT_NAME}/${BUILD_NUMBER}
构建日志:${Jenkins_URL}job/${PROJECT_NAME}/${BUILD_NUMBER}/console

对项目进行更改,push到GitHub远程仓库进行测试,Jenkins会自动拉取最新结果并进行构建
在这里插入图片描述
收到邮件
在这里插入图片描述

发布了10 篇原创文章 · 获赞 0 · 访问量 4425

猜你喜欢

转载自blog.csdn.net/Akanemiku/article/details/104270571