1

我有一个 Scala 类ComponentBuilder,它处理创建演员和初始化他们。它有一个system对应于ActorSystem(除其他外)的字段。

现在,我想使用TestKit- 拦截参与者生成的日志并检查它们来测试它。如果我尝试使用常规EventFilter,我可以看到我的演员在标准输出中产生的日志,但EventFilter没有捕捉到它们,我猜是因为它们在不同的ActorSystem.

我想到的一个解决方案是创建ComponentBuilder一个子类ActorSystem并将所有AS-commands 传递给它的字段。由于返回的受保护方法,我没有设法做到这一点InternalActorRef,但无论如何我不确定它是否会起作用,因为无论如何都会有2个演员系统。

我还尝试将一些消息从测试类传递给演员,然后等待并检查结果。这导致回复deadLetters,可能出于相同的原因 - 内部ActorSystem不知道外部的。

我将不胜感激您可能拥有的任何解决方案。

4

0 回答 0