|
|
@@ -0,0 +1,76 @@
|
|
|
+"""
|
|
|
+@auth: huyy
|
|
|
+@time: 2018/8/20 9:42
|
|
|
+"""
|
|
|
+import os
|
|
|
+import smtplib
|
|
|
+import time
|
|
|
+import unittest
|
|
|
+
|
|
|
+from HTMLTestRunner import HTMLTestRunner
|
|
|
+from email.header import Header
|
|
|
+from email.mime.text import MIMEText
|
|
|
+
|
|
|
+
|
|
|
+def send_emall(new_report):
|
|
|
+ f = open(new_report, 'rb')
|
|
|
+ mail_content = f.read()
|
|
|
+ f.close()
|
|
|
+
|
|
|
+ smtpserver = 'smtp.163.com'
|
|
|
+
|
|
|
+ user = 'hu_yy199426767@163.com'
|
|
|
+ password = 'qq123123'
|
|
|
+
|
|
|
+ sender = 'hu_yy199426767@163.com'
|
|
|
+ receiver = 'huyy@usoftchina.com'
|
|
|
+
|
|
|
+ subject = '测试'
|
|
|
+
|
|
|
+ msg = MIMEText(mail_content, 'html', 'utf-8')
|
|
|
+ msg['Subject'] = Header(subject, 'utf-8')
|
|
|
+ #对应的标题
|
|
|
+ msg['From'] = sender
|
|
|
+ msg['To'] = receiver
|
|
|
+
|
|
|
+ smtp = smtplib.SMTP_SSL(smtpserver, 465)
|
|
|
+ #使用smtplib连接邮件服务器
|
|
|
+ smtp.helo(smtpserver)
|
|
|
+ smtp.ehlo(smtpserver)
|
|
|
+ # 认证邮箱
|
|
|
+ smtp.login(user, password)
|
|
|
+ #登录
|
|
|
+ print("发送邮件中。。")
|
|
|
+
|
|
|
+ smtp.sendmail(sender, receiver, msg.as_string())
|
|
|
+ smtp.quit()
|
|
|
+ print("发送成功!")
|
|
|
+
|
|
|
+def new_report(report_dir):
|
|
|
+ lists = os.listdir(report_dir)
|
|
|
+
|
|
|
+ lists.sort(key=lambda fn: os.path.getatime(report_dir + '\\' + fn))
|
|
|
+ print(lists[-1])
|
|
|
+
|
|
|
+ file = os.path.join(report_dir, lists[-1])
|
|
|
+ print(file)
|
|
|
+ return file
|
|
|
+
|
|
|
+
|
|
|
+try:
|
|
|
+ test_dir = '../testscript'
|
|
|
+ case = unittest.defaultTestLoader.discover(test_dir, pattern='Test_*.py')
|
|
|
+except Exception as e:
|
|
|
+ print(e)
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ report_dir = '../../report'
|
|
|
+ _time = time.strftime('%Y-%m-%d %H`%M`%S ')
|
|
|
+ report_name = report_dir + '/' + _time + '.html'
|
|
|
+ with open(report_name, 'wb')as rp:
|
|
|
+ runner = HTMLTestRunner(stream=rp, title='Mall Test', description='desc')
|
|
|
+ runner.run(case)
|
|
|
+ rp.close()
|
|
|
+
|
|
|
+ a = new_report(report_dir)
|
|
|
+ send_emall(a)
|