1
文件 的完整代码
import smtplib
from import MIMEText
from import formataddr
from import MIMEMultipart
from getcwd import get_cwd
import os
from import log1
from _Page import BasePage
import time
rq = ('%Y%m%d', (())) #获取本地时间 转换成日期
my_mail = BasePage(driver=1)
sender = _get('email','sender') # 发件人邮箱账号
password = _get('password','sender') # 发件人邮箱密码
usernmae = _get('username','sender') #发件人姓名
users = _options('addressed') #收件人
addressed_eamils = _addkey(users) #收件人邮箱
path = get_cwd()
file = (path, 'report/xxxUI 自动化测试报告.html')
def mail():
try:
# 创建一个带附件的实例
message = MIMEMultipart()
# 括号里的对应发件人邮箱昵称、发件人邮箱账号
message['From']=formataddr([usernmae,sender])
('发件人姓名:%s' % usernmae)
('发件人邮箱:%s' % sender)
message['To']=';'.join(addressed_eamils)
# 括号里的对应收件人邮箱昵称、收件人邮箱账号
('收件人邮箱:' + ';'.join(addressed_eamils))
# 邮件的主题,也可以说是标题
message['Subject']=rq + "xxxUI 自动化测试报告.html"
# 邮件正文内容
(MIMEText('附件为 xxxUI 自动化测试报告.html', 'plain', 'utf-8'))
# 构造附件 1,传送当前目录下的 文件
att1 = MIMEText(open(file, 'rb').read(), 'base64', 'utf-8')
('读取附件')
软件测试任务驱动教程
2
att1["Content-Type"] = 'application/octet-stream'
# 这里的 filename 可以任意写,写什么名称,邮件中显示什么名称
_header("Content-Disposition", "attachment",
filename=("gbk", "", "xxxUI 自动化测试报告.html"))
# 附件名称非中文时的写法
# att["Content-Disposition"] = 'attachment; filename="")'
(att1)
('添加附件')
# 发件人邮箱中的 SMTP 服务器,端口是 465
server = _SSL("", 465)
('连接 QQ 邮箱 smtp 服务')
# 括号中对应的是发件人邮箱账号、邮箱密码
(sender,password)
('连接成功')
# 括号中对应的是发件人邮箱账号、收件人邮箱账号、邮件
(sender, addressed_eamils, _string())
() # 关闭连接
("邮件发送成功")
except Exception:
("邮件发送失败",exc_info=1)