我有一個PHPUnit的測試執行以下操作:PHPUnit的電子郵件測試
- 填寫使用Selenium RC網頁上的表單
- (該應用程序將電子郵件發送到Gmail帳戶)
- 連接到Gmail帳戶與imap_open()
- 驗證某些字符串在電子郵件中存在
我的問題是我的測試失敗,因爲我沒有等待電子郵件發送。在這個情況下,你會怎麼做?
我有一個PHPUnit的測試執行以下操作:PHPUnit的電子郵件測試
我的問題是我的測試失敗,因爲我沒有等待電子郵件發送。在這個情況下,你會怎麼做?
請勿使用外部郵件服務器。設置假郵件。 Python版本更易於使用。 http://fakemail.sourceforge.net/
我已經使用了fakemail一段時間,它使我的php simpletest測試運行速度非常快(沒有外部延遲),並且它們都是100%可重複的。
如果我想實際測試腳本的郵件發送部分,我保留一組不同的測試。在我看來,「檢查字符串是否存在」和「檢查發送給Gmail的電子郵件」是兩個不同的失敗點,應該分成不同的測試。
您還可以通過分析測試Gmail帳戶的RSS源「檢查」的電子郵件:
http://www.internoetics.com/2012/08/08/create-a-gmail-rss-feed/
你的速度測試,或用於準確性? – DampeS8N 2010-12-15 17:53:57
測試的準確性 – nnyby 2010-12-15 17:57:32
我不確定測試電子郵件是否應該在這種情況下進行單元測試。單元測試應該驗證應用程序中的邏輯,而不是第三方服務的可靠性。 – rojoca 2010-12-15 18:00:06