使用xxx@163.COM邮箱,获取授权密码:XLQCNKUHWHIXJQ     ,不同的邮箱生成的不一样

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")

一、开通SMTP和POP3协议

二、编写发送邮件类

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2021/4/6 17:50
# @File    : email_manage.py
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMETextclass EmailManage:def send_email(self, report_name):# 定义SMTP服务器smtpserver = 'smtp.163.com'# 发送邮件的用户名和客户端密码username = 'lxm@bonc.com.cn'password = 'Knl'#授权密码# 接收邮件的邮箱receiver = '269108973@qq.com,265452325@22.com'# 创建邮件对象message = MIMEMultipart('related')subject = '邮件的主题目'  #邮件的主题fujian = MIMEText(open(report_name, 'rb').read(), 'html', 'utf-8')# 附件# 把邮件的信息组装到邮件对象里面message['form'] = usernamemessage['to'] = receivermessage['subject'] = subjectmessage.attach(fujian)# 登录smtp服务器并发送邮件smtp = smtplib.SMTP()smtp.connect(smtpserver)smtp.login(username, password)smtp.sendmail(username, receiver, message.as_string())smtp.quit()

生成html文件,并发送邮件

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2021/4/7 11:18
# @File    : test_ecshop.py
import time
import unittest
import HTMLTestRunnerfrom email_test.email_manage import EmailManageclass TestInfo(unittest.TestCase):def test_01(self):print("测试01")def test_02(self):print("测试02")if __name__ == '__main__':suite = unittest.defaultTestLoader.discover('./', '*.py')files = open('./report.html', 'wb')runner = HTMLTestRunner.HTMLTestRunner(stream=files, title='测试报告', description='报告描述')runner.run(suite)files.close()# 在发送之前一定要将文件流关闭掉time.sleep(3)EmailManage().send_email(files.name)

三、使用jenkins,需要安装EmailExtention

构建触发器

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2021/4/7 11:18
# @File    : test_ecshop.py
import time
import unittest
import HTMLTestRunnerfrom email_test.email_manage import EmailManageif __name__ == '__main__':suite = unittest.defaultTestLoader.discover('./', '*.py')files = open('./report.html', 'wb')runner = HTMLTestRunner.HTMLTestRunner(stream=files, title='测试报告', description='报告描述')runner.run(suite)files.close()# 在发送之前一定要将文件流关闭掉time.sleep(3)

下边的【系统管理员邮件地址】,必须和发送人保持一致

python发送邮件及Jenkins持续集成相关推荐

  1. Jenkins持续集成入门到精通

    Jenkins持续集成入门到精通 文章目录 Jenkins持续集成入门到精通 1. 持续集成及Jenkins介绍 1.1 软件开发生命周期 1.2 软件开发瀑布模型 1.3 软件的敏捷开发 1.3.1 ...

  2. Jenkins持续集成

    Jenkins持续集成 1.介绍.环境搭建 什么是Jenkins? Jenkins是一款开源CI&CD软件,用于自动化各种任务,包括构建.测试和部署软件,支持自定义工具集.多种交付通道 CI: ...

  3. 华为表哥手把手教你利用Jenkins持续集成iOS项目,教不会我花式拉翔!!!

    手把手教你利用Jenkins持续集成iOS项目: 前言 众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段.用户们都是很挑剔的.如果一个公司的推广团队好不容易砸了重金推广了一个APP ...

  4. 使用Jenkins持续集成Vue项目配置Sonar任务

    title: 使用Jenkins持续集成Vue项目配置Sonar任务 tags: jenkins Vue.js Sonar categories: ci date: 2017-12-05 22:09: ...

  5. Jenkins持续集成学习-Windows环境进行.Net开发4

    目录 Jenkins持续集成学习-Windows环境进行.Net开发4 目录 前言 目标 Github持续集成 提交代码到Github 从Github更新代码 git上显示构建状态 自动触发构建 Gi ...

  6. 半天搭建你的Jenkins持续集成与自动化部署系统

    前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由 ...

  7. centos下搭建Jenkins持续集成环境(安装jenkins)

    centos下搭建Jenkins持续集成环境(安装jenkins) 1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这 ...

  8. Docker+Jenkins持续集成环境(2)使用docker+jenkins构建nodejs前端项目

    Docker+Jenkins持续集成环境(2)使用docker+jenkins构建nodejs前端项目 前文使用Docker搭建Jenkins+Docker持续集成环境我们已经搭建了基于docker+ ...

  9. Jenkins持续集成环境, 如何自定义 maven repositories

    假设自定义的仓库路径为"/opt/repository",那么在"系统管理-系统设置"中,修改"全局MAVEN_OPTS"的值为如下的内容: ...

最新文章

  1. 如何在Android手机上进行Google Map的开发。
  2. SpringMVC和mybatis的框架
  3. poj1273 最大流
  4. AdaBoost算法源码分析
  5. 马来西亚热情拥抱阿里巴巴 马云倡议的eWTP首次落地海外
  6. C#趣味程序---车牌号判断
  7. LeetCode 723. 粉碎糖果(模拟)
  8. C++ rand,srand用法
  9. SVM支持向量机习题解答
  10. 高通fastboot一键进9008工具_linux高通内核移植工具十教程
  11. Handler处理机制
  12. 【通信】基于量子密钥分发密钥率仿真含Matlab源码
  13. mac去除视频水印用什么软件?
  14. C语言:memcmp()。
  15. 太全面了!Python 编程的最好搭档—VSCode 实用指南!
  16. 【人情世故】汇报措辞
  17. 一个手机号可注册两个微信号
  18. java给图片、word、ppt、excel、pdf添加水印
  19. (六)Python查询12306余票:升级版-----图形化界面代码
  20. ERROR 2000 (HY000): Unknown MySQL error

热门文章

  1. 经典故障:四个雷,3*2*2*3种随机方法的特殊恢复案例
  2. 年近而立,Java何去何从?
  3. 【华为云技术分享】基于Atlas 200 DK的原版YOLOv3(基于Darknet-53)实现(Python版本)
  4. 【华为云技术分享】浅谈产品模型(Profile)在程序设计中的作用
  5. 【Python3网络爬虫开发实战】1.6.1-Flask的安装
  6. 【Python3网络爬虫开发实战】1.5.3-redis-py的安装
  7. 开启ntp_飒,NTP时钟服务器在银行大楼系统方案
  8. Kotlin学习笔记21 协程part1 基本概念
  9. 韩顺平php视频笔记48 函数进阶
  10. Android笔记 Android客户端从服务器获取源码乱码demo