測試報告郵件發送(五)


  當測試報告生成之后,可能需要對測試報告進行以郵件形式的發送。

  具體代碼為:

 1 # coding=utf-8
 2 import smtplib                       #發送郵件模塊
 3 from email.mime.text import MIMEText #定義郵件內容
 4 from email.header import Header      #定義郵件標題
 5 
 6 #發送郵件服務器
 7 smtpserver='smtp.qq.com'
 8 
 9 #發送郵箱用戶名和密碼
10 user='****@qq.com'
11 password='************'
12 mail_pass='**********'
13 
14 #發送和接收郵箱
15 sender='************@qq.com'
16 receive='************@qq.com'
17 
18 # 發送郵件主題和內容
19 subject='Web Selenuim 自動化測試報告'
20 
21 #HTML郵件正文
22 file_new='D:\\python\\venv\\result2018-05-25-17_25_55.html'
23 f = open(file_new,'rb')
24 mail_body = f.read()
25 f.close()
26 msg=MIMEText(mail_body,'html','utf-8')
27 msg['subject']=Header(subject,'utf-8')
28 msg['From']='************@qq.com'
29 msg['To']='************@qq.com'
30 
31 #SSL協議端口號要使用465
32 smtp=smtplib.SMTP_SSL(smtpserver,465)
33 
34 #向用戶標識用戶身份
35 smtp.helo(smtpserver)
36 #服務器返回結果確認
37 smtp.ehlo(smtpserver)
38 #登錄郵箱服務器用戶名和密碼
39 smtp.login(user,mail_pass)
40 
41 
42 print("Start send Email....")
43 smtp.sendmail(sender,receive,msg.as_string())
44 smtp.quit()
45 print("Send Email end!")

  發送郵箱地址與接收郵箱地址使用************進行代替。

  一、在調試過程中出現報錯,如下:

  QQ郵箱需使用授權碼作為專用密碼,登錄第三方客戶端,所以用原來的密碼會導致錯誤。按照鏈接中的提示,進入QQ郵箱設置頁面,開啟SMTP服務,發短信獲取授權碼。所以需獲取qq郵箱的授權碼,登陸時使用授權碼進行登陸。

  

  二、建立SSL安全連接:

  

  端口號要修改為465。

  使用標准的25端口連接SMTP服務器時,使用的是明文傳輸,發送郵件的整個過程可能會被竊聽。要更安全地發送郵件,可以加密SMTP會話,實際上就是先創建SSL安全連接,然后再使用SMTP協議發送郵件。

  發送結果:

  

 

 


  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM