因此,我編寫了一個簡單的電子郵件服務,使用smtplib在用戶首次登錄時發送歡迎電子郵件。我想知道測試我的代碼的最佳方式是什麼。測試python smtp電子郵件服務
def send_email(nickname, email):
msg = MIMEMultipart('alternative')
config = read_config_file(MAIL_CONFIG_PATH)
sen = config.get('gmail_credentials', 'email')
pwd = config.get('gmail_credentials', 'password')
server = None
try:
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login(sen, pwd)
server.sendmail(sen, [email], msg.as_string())
return 'Sent!'
finally:
if server:
server.quit()
我發現,你可以使用一個假的SMTP服務器:
sudo python -m smtpd -n -c DebuggingServer localhost:25
但是,我還是不知道我應該如何實現這樣的事情在我的代碼。如何更改我的API,以便在測試過程中運行SMTP服務器並連接到GMAIL服務器以進行實際調用?是否有初始化腳本會在我們的服務器上運行SMTP服務器(這將部署在AWS EC2上)。