测试报告邮件发送(五)
当测试报告生成之后,可能需要对测试报告进行以邮件形式的发送。
具体代码为:
1 # coding=utf-8 2 import smtplib #发送邮件模块 3 from email.mime.text import MIMEText #定义邮件内容 4 from email.header import Header #定义邮件标题 5 6 #发送邮件服务器 7 smtpserver='smtp.qq.com' 8 9 #发送邮箱用户名和密码 10 user='****@qq.com' 11 password='************' 12 mail_pass='**********' 13 14 #发送和接收邮箱 15 sender='************@qq.com' 16 receive='************@qq.com' 17 18 # 发送邮件主题和内容 19 subject='Web Selenuim 自动化测试报告' 20 21 #HTML邮件正文 22 file_new='D:\\python\\venv\\result2018-05-25-17_25_55.html' 23 f = open(file_new,'rb') 24 mail_body = f.read() 25 f.close() 26 msg=MIMEText(mail_body,'html','utf-8') 27 msg['subject']=Header(subject,'utf-8') 28 msg['From']='************@qq.com' 29 msg['To']='************@qq.com' 30 31 #SSL协议端口号要使用465 32 smtp=smtplib.SMTP_SSL(smtpserver,465) 33 34 #向用户标识用户身份 35 smtp.helo(smtpserver) 36 #服务器返回结果确认 37 smtp.ehlo(smtpserver) 38 #登录邮箱服务器用户名和密码 39 smtp.login(user,mail_pass) 40 41 42 print("Start send Email....") 43 smtp.sendmail(sender,receive,msg.as_string()) 44 smtp.quit() 45 print("Send Email end!")
发送邮箱地址与接收邮箱地址使用************进行代替。
一、在调试过程中出现报错,如下:
QQ邮箱需使用授权码作为专用密码,登录第三方客户端,所以用原来的密码会导致错误。按照链接中的提示,进入QQ邮箱设置页面,开启SMTP服务,发短信获取授权码。所以需获取qq邮箱的授权码,登陆时使用授权码进行登陆。
二、建立SSL安全连接:
端口号要修改为465。
使用标准的25端口连接SMTP服务器时,使用的是明文传输,发送邮件的整个过程可能会被窃听。要更安全地发送邮件,可以加密SMTP会话,实际上就是先创建SSL安全连接,然后再使用SMTP协议发送邮件。
发送结果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架