![](https://img-blog.csdnimg.cn/a1800e87c5584a4a828d3c803de1ef85.png)
前言
上篇文章写了关于定时构建,以及构建后发送邮件的内容,但是构建时运行的代码是我们手动添加到Jenkins工作空间的。这篇文章我们说一说自动从GitHub远程库拉取代码,执行构建,废话不多说,开始!(开始之前,我们需要安装GitHub插件:GitHub plugin 如何安装自行百度吧)
新建项目
仍然和上一篇文章一样,我们新建一个自由风格的项目(我这里就不新建了 我直接在原有的项目基础上配置)
获取GitHub地址
我们项目所在路径的地址
![](https://img-blog.csdnimg.cn/img_convert/14cde764cedfc5bf89b5d47c442b5015.png)
项目配置
General
输入项目描述, 勾选Github project, 输入远程项目地址
![](https://img-blog.csdnimg.cn/img_convert/46278aaba2ee1f1e4ab56f33fb64f62e.png)
源码管理
其实我们在安装github的时候需要配置公钥(git如何安装和使用自行百度),那么我们拉取远程库代码就需要配置私钥
Git的私钥文件
一般安装Git的时候,生成的公钥和秘钥都默认在下面这个目录下
![](https://img-blog.csdnimg.cn/img_convert/74a2554add4b31e20dcbde33ad4dbb98.png)
![](https://img-blog.csdnimg.cn/img_convert/f0169f98f35a1fce093059ab12288511.png)
源码管理我们勾选Git,并点击【添加】
![](https://img-blog.csdnimg.cn/img_convert/afa36facb560415997972b7298a1b4cb.png)
弹出框中按照标记内容进行添加
![](https://img-blog.csdnimg.cn/img_convert/d9b9a2777a598af2e63572a1db57ec14.png)
![](https://img-blog.csdnimg.cn/img_convert/a9dd86244b1bb07b2dafd41938a1a215.png)
构建触发器
这里时间间隔的设置自己设置把,我这个保留上篇文章的设置,我没有动
![](https://img-blog.csdnimg.cn/img_convert/d94631429835f8e50790fceede0f305c.png)
构建环境
我们这里选择每次构建之前清空一下Jenkins工作空间,避免拉取的代码有冲突
![](https://img-blog.csdnimg.cn/img_convert/cf289c58bc7620eff7fad951d81faa98.png)
构建
选择执行windows批处理命令
![](https://img-blog.csdnimg.cn/img_convert/795fadc92b3a0007aac90d95d9f21684.png)
构建后的操作
构建后的操作我们仍然使用上篇文章的设置,只发送一个带附件的邮件(与上篇一致)
![](https://img-blog.csdnimg.cn/img_convert/8936370d2ce00f4520c2e56e755c8d86.png)
修改下面的配置如图
![](https://img-blog.csdnimg.cn/img_convert/a03e83c6a994931b5e119d5d3220c00b.png)
结果展示
接下来我们保持Jenkins工作空间(workspace下面已项目名称命名的文件夹)的代码不动(为了测试构建之前是否会自动删除工作空间),构建开始时看下是否会自动拉取GitHub代码进来
我们直接手动构建(手动构建没问题,只要设置的定时构建语法没问题,到时间会自动构建的)
![](https://img-blog.csdnimg.cn/img_convert/0a995ff41946aad8bc1819832f88fb1c.png)
Jenkins工作空间
可以看到清空的文件夹已经拉取到了GitHub上面的项目代码,原来的代码已经删除了
![](https://img-blog.csdnimg.cn/img_convert/689b8044286995d0d66a62049a2eba41.png)
Jenkins日志
![](https://img-blog.csdnimg.cn/img_convert/05791be176299ef046853ad7c2f51b77.png)
![](https://img-blog.csdnimg.cn/img_convert/a6f9f505af47e2919af0a2d167e80070.png)
控制台日志可以看到构建之前已经执行了删除工作空间的操作和克隆远程代码,再看下QQ邮箱是否收到报告
QQ收件箱
正文
![](https://img-blog.csdnimg.cn/img_convert/b84646f1c11325ac8ad5720b3949eef1.png)
附件
![](https://img-blog.csdnimg.cn/img_convert/562eb6143e2973f01669abdf8d18f9a1.png)
再看一下我们的报告是否也正常,报告目录下只有一个最新的报告
![](https://img-blog.csdnimg.cn/img_convert/0bd84717816ae8a59113882c18a91e36.png)
![](https://img-blog.csdnimg.cn/img_convert/9edebdfe86ac04f4c385db25ab5b514d.png)
最后
是不是很完美, 当看到成功构建那一刻还是小有成就感的,好了,赶紧动手试一试!
如果你想学习自动化测试,那么下面这套视频应该会帮到你很多
如何逼自己1个月学完自动化测试,学完即就业,小白也能信手拈来,拿走不谢,允许白嫖....
最后我这里给你们分享一下我所积累和整理的一些文档和学习资料,有需要直接领取就可以了
![](https://img-blog.csdnimg.cn/e347f1257fd24b059eba4be74558fc5b.png)
以上内容,对于软件测试的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。
![](https://img-blog.csdnimg.cn/6dc872903d294b8aad6a274241da4712.png)