STMP(Simple Mail Transfer Protocol)ol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制新建的中转方式。主要有smtplib和email两个模块实现。
smtplib模块主要负责发送邮件: 是一个发送邮件的动作,连接邮箱服务器,登录邮箱,发送邮件。
email模块主要负责构造邮件:构造邮件的元素,如:发件人,收件人,主题,正文,附件等。
==========================================================================================
smtplib模块
def sendMail(self, text=None): #邮件收发人与服务器 from_addr = self.config.sender to_addr = self.config.receiver smtp_auth = self.config.password smtp_sever = self.config.smtpserver #邮件正文信息 stress_body = Consts.STRESS_LIST result_body = Consts.RESULT_LIST body2 = 'Hi,all\n本次接口自动化测试报告如下:\n 接口响应时间集:%s\n 接口运行结果集:%s' % (stress_body, result_body) # 组装发送内容--》email模块使用 msg = MIMEText(body2, 'plain', _charset='utf-8') msg["Subject"] = Header('接口自动化测试报告', 'utf-8') msg['From'] = from_addr msg['To'] = to_addr try: # 配置服务器--》smtplib模块使用 ser = smtplib.SMTP_SSL(smtp_sever) # ser.connect(smtp_sever,465) ser.login(from_addr, smtp_auth) ser.sendmail(from_addr, to_addr,msg.as_string()) except Exception as e: print(e) self.log.error("邮件发送失败") else: self.log.info("邮件发送成功") finally: ser.quit()
参考文献:
https://blog.csdn.net/qq_37193537/article/details/82692678