集成Allure报告只需要配置构建后操作即可。但如果是web自动化,或是用HTMLTestRunner生成报告,构建后操作
要选择Publish HTML reports,而构建中还要添加Execute system Groovy script
插件,内容:
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")
不然生成的报告会样式丢失。
Jenkins发送邮件
- 1安装插件>Email
- 2获得邮箱客户端密码
这个密码不是登录密码而是POP3/SMTP的授权码,开启的时候需要发短信验证
- 3系统管理->系统配置/Config System
1)系统管理员邮件
2)Extended E-mail Notification
配置管理员邮箱
3)后缀
默认后缀
4)默认收件人,以英文逗号分隔
默认收件人,以英文逗号分隔
5)邮件主题和内容(附代码)
邮件主题和内容
代码:
Default Subject
【构建通知】$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!
Default Content
<!DOCTYPE html>
<html lang="en">
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
本邮件由系统自动发出,无需回复!<br/>
各位同事,大家好,以下为${PROJECT_NAME }项目构建信息</br>
<font color="red">构建状态:${BUILD_STATUS};下载allure-report.zip到本地后可以通过命令行"allure open 报告路径"进行查看</font>
</tr>
<tr>
<td><br/>
<b><font color="#0B610B">项目描述:${JOB_DESCRIPTION}<br></font></b>
<hr size="2" width="100%" align="center" /></td>
</tr>
<tr>
<td>
<ul>
<li>项目名称 : ${PROJECT_NAME}</li>
<li>构建编号 : 第${BUILD_NUMBER}次构建</li>
<li>触发原因: ${CAUSE}</li>
<li>构建状态: ${BUILD_STATUS}</li>
<li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
<li>构建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li>
<li>工作目录 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
<li>系统allure测试报告:<a HREF="${PROJECT_URL}${BUILD_NUMBER}/allure">${PROJECT_URL}${BUILD_NUMBER}/allure</a></li>
</ul>
</td>
<tr>
<td>
<b><font color="#0B610B">构建日志 (最后 100行):</font></b>
<hr size="2" width="100%" align="center" />
</td>
</tr>
<tr>
<td>
<textarea cols="80" rows="30" readonly="readonly" style="font-family: Courier New">${BUILD_LOG, maxLines=100}</textarea>
</td>
</tr>
${JELLY_SCRIPT}
</table>
</body>
</html>
6)邮件通知
邮件通知
配置好后,可以进行测试
测试
配置job构建后的操作
选择Editable Email Notification
插件
删掉只有失败时才会触发发邮件操作,新增Always
触发器
去掉失败才触发发邮件操作
新增触发器,选择Always
点击保存。
构建项目,即可收到邮件:
邮件样式
邮件样式可以复制代码以后自己修改,或者自己写代码。
Jenkins定时任务
在job配置中选择构建触发器
->定时构建/Build Periodically
在日程表
中写入* * * * *
这五个星分别代表分-时-日-月-年
,如果要设定每天9:30执行,就写30 9 * * *
注意时间是24小时制的,晚上九点就要写21点。
Jenkins持续部署/CD
我们每次需求更新,开发写完代码后要同步到测试服务器,然后进行测试。如果每次都要自己去手动拉去代码然后部署有些麻烦,这时候就可以利用Jenkins进行持续部署,就是我们说的CD。
现在都从GitHub/Gitee拉取代码
我们原来的代码复制一份,取名DayOneTest
(注意:要么您不要操作,如果操作一定要复制代码,也就是备份代码!备份代码!备份代码!)
复制来的代码文件
然后修改我们的Jenkins工作空间
然后到配置->源码管理
添加Gitee地址
按照Gitee信息填写
点击添加
后选择Jenkins
选择代码分支
点击保存。
我们现在执行构建,您会发现,文件夹里的内容被删掉了,变成了Gitee里面的内容。这就是为什么操作之前要备份代码的原因。
目前来看,持续集成CI和持续部署CD比较适合分开成两个job来做,因为每次部署时会删掉原来的代码同步成GitHub/Gitee上最新的代码,这时候进行执行任务会出现有文件丢失的情况出现。