2014-09-01 76 views
0

我想爲我的演員編寫一些測試用例,問題是某些測試失敗,我無法弄清楚爲什麼他們失敗。使用akka測試工具記錄收到的郵件

在正常情況下,我的代碼工作正常(沒有任何測試),但對於我的測試,我嘲笑twitter4j庫的一些部分,這使得它們變得複雜。

測試失敗,沒有更多關於它的有用信息。

有沒有辦法用akka testkit和scalatest記錄收到的消息?

回答

0

如果您希望能夠記錄所有接收到的消息,有三件事情你必須做:

1)裹在演員的receive功能要啓用從akka.eventLoggingReceive(日誌記錄包)。

2)設置從配置的akka.actor.debug.receive設置true

3)確保你的日誌記錄配置將在DEBUG級別顯示消息

所以你的演員可能是這個樣子:

import akka.actor._ 
import akka.event.LoggingReceive 
class MyActor extends Actor{ 
    def receive = LoggingReceive{ 
    case msg => ... 
    } 
} 

如果你這樣設置,你應該開始看到爲被測試的演員記錄所有記錄到DEBUG級別的消息。您可以在Akka Docs的Testing Actor Systems部分閱讀更多內容,特別是跟蹤演員調用小節。

相關問題