zoukankan      html  css  js  c++  java
  • Python发送邮件以及自动化测试报告的生成

    • SendEmail.py
     1 #!/usr/bin/python
     2 # -*- coding: UTF-8 -*-
     3 
     4 import smtplib
     5 from email.mime.text import MIMEText
     6 from email.utils import formataddr
     7 from email.header import Header
     8 
     9 my_sender = '1368424687@qq.com'  # 发件人邮箱账号
    10 my_pass = 'rkcxowkkminggdgj'  # 发件人邮箱密码
    11 my_user = 'bronc.q.li@outlook.com'  # 收件人邮箱账号,我这边发送给自己
    12 
    13 
    14 def mail():
    15     ret = True
    16     try:
    17         msg = MIMEText('Python 邮件发送测试001...', 'plain', 'utf-8')
    18         msg['From'] = formataddr(["FromRunoob", my_sender])  # 括号里的对应发件人邮箱昵称、发件人邮箱账号
    19         msg['To'] = formataddr(["FK", my_user])  # 括号里的对应收件人邮箱昵称、收件人邮箱账号
    20         msg['Subject'] = "菜鸟教程发送邮件测试"  # 邮件的主题,也可以说是标题
    21 
    22         server = smtplib.SMTP_SSL("smtp.qq.com", 465)  # 发件人邮箱中的SMTP服务器,端口是25
    23         server.login(my_sender, my_pass)  # 括号中对应的是发件人邮箱账号、邮箱密码
    24         server.sendmail(my_sender, [my_user, ], msg.as_string())  # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
    25         server.quit()  # 关闭连接
    26     except Exception as ex:  # 如果 try 中的语句没有执行,则会执行下面的 ret=False
    27         print(ex)
    28         ret = False
    29     return ret
    30 
    31 
    32 ret = mail()
    33 if ret:
    34     print("邮件发送成功")
    35 else:
    36     print("邮件发送失败")
    • RunTest.py
     1 import unittest,time
     2 from HTMLTestRunner import HTMLTestRunner
     3 
     4 #指定测试用例为当前文件夹下的Practice目录
     5 test_dir='./test_case'
     6 discover=unittest.defaultTestLoader.discover(test_dir,pattern='test_*.py')
     7 
     8 if __name__=='__main__':
     9 
    10     # 按照一定格式获取当前时间
    11     now=time.strftime("%Y-%m-%d %H_%M_%S")
    12     # 定义报告存放路径
    13     filename=test_dir+'/Report/'+now+'result.html'
    14     fp=open(filename,'wb')
    15 
    16     # 定义测试报告
    17     runner=HTMLTestRunner(stream=fp,title='测试报告',description='用例执行情况')
    18 
    19     runner.run(discover)  # 运行测试用例
    20     fp.close()  # 关闭报告文件
  • 相关阅读:
    银行数据仓库体系实践(6)--调度系统
    银行数据仓库体系实践(5)--数据转换
    银行数据仓库体系实践(4)--数据抽取和加载
    银行数据仓库体系实践(3)--数据架构
    银行数据仓库体系实践(2)--系统架构
    银行数据仓库体系实践(1)--银行数据仓库简介
    敏捷开发和传统开发区别
    source ~/.bash_profile是什么意思
    oracle里的DBLINK是做什么的
    flex-direction的值及使用效果
  • 原文地址:https://www.cnblogs.com/taidou/p/8406323.html
Copyright © 2011-2022 走看看