手把手教你配置Jenkins自动化邮件通知

完成基于Jenkins的持续集成部署后,自动化测试执行后,测试结果需要通知到相关人员,除了钉钉通知外我们还可以通过Email通知到对应负责人,这里记录一下测试结果通过Jenkins邮件通知的配置与部署

01、安装插件

方法1: 进入Jenkins-系统管理--插件管理-可选插件,安装Email Extension Plugin和Build Timestamp插件

方法2:进入Jenkins插件下载email-ext和build-timestamp与其依赖插件,进入Jenkins-系统管理--插件管理-高级-上传插件, 上传安装

Email Extension Plugin:通过STMP协议发送电子邮件

Build Timestamp:获取构建时的时间戳并转换为指定格式 用于获取log和html测试报告名称发送邮件附件

02、SMTP介绍

SMTP 的全称是"Simple Mail Transfer Protocol",即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。

SMTP认证 简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机

STMP授权码的获取:

QQ邮箱获取授权码

163邮箱获取授权码

03、Jenkins系统配置

进入系统管理 - 系统配置

1.配置获取的时间戳格式 用于发送邮件时获取log和html报告为邮件附件

2.配置发件箱与邮件类型

3.设置默认收件、邮件标题和邮件内容
4. 设置触发类型与重复发件箱配置

注:配置完成后可通过发送测试邮件是否配置正确

04、配置Job

进入Job - 配置 - 构建后操作 - -增加构建后步骤 - Editable Email Notification, 配置如下

1.配置收件人列表、邮件标题和邮件内容,可覆盖系统配置的参数
2. 获取邮件附件 Log和html测试报告

  1. 配置是否发送构建日志为附件、发件类型和发件对象

Default Subject

python 复制代码
【接口自动化】$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!

Default Content

python 复制代码
<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>

</head>

<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>

            <td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td>

        </tr>

        <tr>

            <td><br />

            <b><font color="#0B610B">构建信息</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>项目URL:<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>

                    <li>工作目录:<a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>

                    <li>构建URL:<a href="${BUILD_URL}">${BUILD_URL}</a></li>

                    <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>

                    <li>测试报告:<a href="${BUILD_URL}HTML_20Report/">${BUILD_URL}HTML_20Report/</a></li>

                </ul>

                <h4><font color="#0B610B">失败用例</font></h4>

                <hr size="2" width="100%" />$FAILED_TESTS<br/>

                <h4><font color="#0B610B">最近提交版本(git:$GIT_REVISION)</font></h4>

                <hr size="2" width="100%" />

                <ul>

                ${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d[%a] %m</li>"}

                </ul>

                    详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>

            </td>

        </tr>

    </table>

</body>

</html>

05、邮件发送效果预览

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
北京耐用通信42 分钟前
耐达讯自动化PROFIBUS三路中继器:突破工业通信距离与干扰限制的利器
人工智能·物联网·自动化·信息与通信
北京盟通科技官方账号10 小时前
工业通讯底层对齐:EtherNet/IP Class 1 连接中的 32-bit Header 与内存映射逻辑
服务器·网络·网络协议·自动化·制造
Edward1111111110 小时前
tomcat_servlet
java·servlet·tomcat
天才测试猿14 小时前
2026全新软件测试面试八股文【含答案+文档】
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
翔云 OCR API15 小时前
智能发票查验接口在财务自动化中的技术实现与应用价值
linux·运维·自动化
GAOJ_K16 小时前
滚柱导轨精度等级如何匹配应用场景?
人工智能·科技·机器人·自动化·制造
天竺鼠不该去劝架16 小时前
金融智能体三大核心场景:银行运营、证券研究、保险理赔效率提升路径
人工智能·科技·自动化
心无旁骛~17 小时前
ModelEngine Nexent 智能体从创建到部署全流程深度体验:自动化利器让 AI 开发效率拉满!
运维·人工智能·自动化
Gofarlic_oms119 小时前
Cadence许可证全生命周期数据治理方案
java·大数据·运维·开发语言·人工智能·安全·自动化
云动课堂19 小时前
【运维实战】企业级 NFS 文件共享服务 · 一键自动化部署方案 (适配银河麒麟 V10 /openEuler /CentOS)
运维·centos·自动化