Scala akka-测试特定日志条目

Scala akka-测试特定日志条目,scala,akka,Scala,Akka,我正在为Akka actors编写单元测试,并希望验证日志条目;e、 g.测试xyz写入错误类别。(你知道,假设我通过!而不是?)向演员发送消息) 在actor中,我将根据“receive”处理的消息的结果,为错误、信息或调试等情况写入日志 对于akka 1.2或1.3,我应该怎么做?示例:向EventHandler添加新的侦听器?其他想法 提前感谢,, 托德约翰已经在他的答案中介绍了基本知识(我会将消息传递给测试者,而不是使用TestLatch,但这是一个品味问题)。我知道它不符合您的要求,但

我正在为Akka actors编写单元测试,并希望验证日志条目;e、 g.测试xyz写入错误类别。(你知道,假设我通过!而不是?)向演员发送消息)

在actor中,我将根据“receive”处理的消息的结果,为错误、信息或调试等情况写入日志

对于akka 1.2或1.3,我应该怎么做?示例:向EventHandler添加新的侦听器?其他想法

提前感谢,,
托德

约翰已经在他的答案中介绍了基本知识(我会将消息传递给
测试者
,而不是使用TestLatch,但这是一个品味问题)。我知道它不符合您的要求,但也许以下内容可以吸引您进入Akka 2.0

EventFilter.error(message = "some message", occurrences = 1) intercept {
  // do something which should trigger such a log message
}

这些设施来自akka测试套件,具体来说是
akka.testkit.TestEventListener
akka.testkit.EventFilter
。上面显示的代码将等待最长3秒钟(可在“akka.test.filter leeway”中配置),以便消息出现,如果没有出现,则会给出一条信息性错误消息。

一些让我吃惊的事情。在Akka 2.1中,您可以使用config
Akka.event-handlers=[“Akka.testkit.TestEventListener”]
启用此功能。在2.2中,这已更改为
akka.loggers=[“akka.testkit.TestEventListener”]