2017-06-18 58 views
0

最新的電子郵件,我能夠從通過「郵件閱讀器採樣」監聽使用POP3電子郵件帳戶獲取電子郵件。但它不檢索最新的電子郵件。 是否可以使用Beanshell Sampler提取最新的電子郵件。如果是的話,如果這是可以實現的,你可以分享一下代碼嗎?有沒有辦法來從「郵件閱讀器取樣器」或「BeanShell的取樣」

按照下面的討論 - 看起來是不可行的。但是,想要檢查這是否可以通過任何方式實現? Stackoverflow Discussion on how to fetch required email

+0

的可能的複製[測試使用先進JMeter的郵件閱讀樣的場景(https://stackoverflow.com/questions/25075766/testing-advanced-scenarios-using-jmeter-mail-reader-sampler) –

回答

0

你可以這樣做編程方式,檢查了以下方法:

根據t他JavaDoc

消息編號從1開始通過文件夾中的消息總數。

所以最後一條消息的數量始終是相同的給定文件夾中的郵件總數。

示例代碼中使用POP3協議讀取最後一封電子郵件

import javax.mail.Folder 
import javax.mail.Message 
import javax.mail.Session 
import javax.mail.Store 

String host = "host" 
String user = "username" 
String password = "password" 

Properties properties = System.getProperties(); 
Session session = Session.getDefaultInstance(properties) 
Store store = session.getStore("pop3") 
store.connect(host, user, password) 
Folder inbox = store.getFolder("Inbox") 
inbox.open(Folder.READ_ONLY) 

int msgCount = inbox.getMessageCount() 
Message last = inbox.getMessage(msgCount) 

//do what you need with the "last" message 
inbox.close(true) 
store.close() 

我也建議忘掉BeanShell中,每當你需要執行腳本 - 使用JSR223 ElementsGroovy language比如Groovy具有更好的性能,更多的Java兼容,它有一些很好的語言功能。有關更多詳細信息,請參閱Apache Groovy - Why and How You Should Use It指南。

相關問題