gpt4 book ai didi

java - 测试 akka actor 时检查是否缺少日志消息

转载 作者:行者123 更新时间:2023-12-01 19:45:38 24 4
gpt4 key购买 nike

使用 TestKit 测试 Akka actor 时,https://doc.akka.io/docs/akka/2.5/testing.html显示如何验证给定消息是否已记录。

有没有办法检查是否缺少消息?

我让我的 Actor 设置为在收到未处理的消息时调用一个方法,记录类似“收到意外消息”的内容。在我的测试中,我想验证该消息从未被记录,即使测试看起来成功。有办法做到这一点吗?

我使用的是 Akka 2.5 和 Java 10。

最佳答案

这取决于您的实现。您可以执行以下两种操作之一:

1) 创建一个 TestKit 探针并使其订阅系统的 eventStream

yourActorSystemInTheTest.eventStream().subscribe(yourProbe.getRef(), UnhandledMessage.class);

最后检查探测器收到了多少条消息,在您的情况下为 0。使用您可以使用的众多“期望...”方法之一。

2) 文档告诉您如何检查日志消息,因此只需断言您收到“收到意外消息”的次数为 0 即可。

同样,根据您的参与者的实现,上述内容可能不起作用。

祝你好运!

关于java - 测试 akka actor 时检查是否缺少日志消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53509789/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com