33.13. 限制要保留的消息数量


Mock 端点默认保留其收到的每个交换的副本。因此,如果您使用大量消息进行测试,那么它将消耗内存。
我们引入了两个选项是 FirstretainLast,它被用来只指定第一个和/或最后的交换所保留的国家/或最后的交换。

例如,在下面的代码中,我们只想保留第 5 个并最后的 5 Exchange 接收的模拟数据副本。

  MockEndpoint mock = getMockEndpoint("mock:data");
  mock.setRetainFirst(5);
  mock.setRetainLast(5);
  mock.expectedMessageCount(2000);

  mock.assertIsSatisfied();

使用此功能存在一些限制。MockEndpoint 上的 getExchanges()getReceivedExchanges() 方法仅返回 Exchanges 的保留副本。因此,在上面的示例中,列表将包含 10 个 Exchanges、前五个和最后五个。
retainFirstretainLast 选项也有一些限制,您可以预期使用方法。例如,针对消息正文、标头等操作 的预期XXX 方法将仅对保留的消息执行操作。在上例中,它们只能测试 10 个保留的消息中的预期。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.