空手道 WebSocket 如何在一个会话中收听多个消息?

Karate WebSocket how to listen to multiple messages within one session?

对于我们的集成测试,我们有一个场景,我们想要收听我们使用的环境预定义的一定数量的消息。我已经看到可以通过打开一个新连接来收听多条消息,但这并没有太大的灵活性。

你读过文档了吗,因为据我所知,如果你定义一个“处理程序”函数,你可以对多条消息使用相同的连接,并选择何时停止:https://github.com/intuit/karate#websocket

另见:

但如果您有非常具体的需求或自定义逻辑,也许最好的办法是编写一小段 Java“胶水”代码,您将获得所需的所有灵活性。您可以重新使用空手道的 Java API,例如 com.intuit.karate.http.WebSocketClient - 但这没有记录,并且可能是您可以研究/贡献代码的区域。

这是一个很好的例子:https://twitter.com/KarateDSL/status/1417023536082812935 Java-interop 方法提供的灵活性。