手把手教你配置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、邮件发送效果预览

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

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

相关推荐
长安初雪1 小时前
Request 和 Response 万字详解
计算机网络·servlet
2401_857622663 小时前
SpringBoot健身房管理:敏捷与自动化
spring boot·后端·自动化
力姆泰克3 小时前
看电动缸是如何提高农机的自动化水平
大数据·运维·服务器·数据库·人工智能·自动化·1024程序员节
BPM_宏天低代码3 小时前
低代码 BPA:简化业务流程自动化的新趋势
运维·低代码·自动化
钱钱钱端4 小时前
【压力测试】如何确定系统最大并发用户数?
自动化测试·软件测试·python·职场和发展·压力测试·postman
IT-民工211104 小时前
CI/CD 实践总结
运维·ci/cd·自动化
测试19985 小时前
外包干了2年,快要废了。。。
自动化测试·软件测试·python·面试·职场和发展·单元测试·压力测试
A-bodgie5 小时前
Spring 中的 Environment 对象
java·后端·spring·servlet·springboot
_.Switch6 小时前
Serverless架构与自动化运维
运维·python·缓存·自动化·运维开发
孤蓬&听雨7 小时前
RabbitMQ自动发送消息工具(自动化测试RabbitMQ)
分布式·测试工具·自动化·rabbitmq·自动发送消息