python自动化测试——测试报告以附件形式发送邮件

 

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header

def send_mail(report_name, receiver ='***@qq.com'):
    '''
    发送测试报告到邮箱
    :param report_name: 需要发送的测试报告
    :param receiver: 邮件接收人
    :return:
    '''
    # ----------------------------------------------------------
    # 获取邮件正文,读取测试报告的内容
    f = open(report_name, 'rb')
    mail_body = f.read()
    f.close()
    # 邮件服务器
    smtpserver = 'smtp.163.com'
    # 发件人和密码
    sender = '***@163.com'
    password = '******'
    # 接收人
    receiver = receiver
    # 邮件主题
    subject = u'自动化测试报告'
    # ----------------------------------------------------------
    # 连接登录邮箱
    server = smtplib.SMTP(smtpserver, 25)
    server.login(sender, password)
    # ----------------------------------------------------------
    # 添加附件
    sendfile = open(report_name, 'rb').read()
    att = MIMEText(sendfile, "base64", 'utf-8')
    att['Content-Type'] = 'application/octet-stream'
    att['Content-Disposition'] = 'attachment;filename="report.html"'
    msg = MIMEMultipart('related')
    msgtext = MIMEText(mail_body, 'html', 'utf-8')
    msg.attach(msgtext)
    msg['From'] = sender
    msg['To'] = receiver
    msg['Subject'] = Header(subject, 'utf-8').encode()
    msg.attach(att)
    # ----------------------------------------------------------
    # 发送邮件
    server.sendmail(sender, [receiver], msg.as_string())
    server.quit()
    print("发送成功!")

send_mail("report.html")

 

转载于:https://www.cnblogs.com/nicole-zhang/p/10394668.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值