第 100 章 Mock
仅支持生成者
测试分布式和异步处理非常困难。Mock、Test 和 Dataset 端点与 Camel 测试框架协同工作,从而通过使用 企业集成模式 和 Camel 的大量组件以及强大的 Bean 集成来简化您的单元和集成测试。
Mock 组件提供强大的声明测试机制,它类似于 jMock,它允许在测试开始前在任何 Mock 端点上创建声明预期。然后,运行测试,它通常会触发消息到一个或多个端点,最终在测试情况下可以预期确保系统按预期工作。
这可让您测试各种内容:
注意
注意
模拟端点会无限期地显示接收的交换。
请记住,Mock 是为测试而设计的。将 Mock 端点添加到路由时,发送到端点的每个交换都将存储在内存中(允许稍后验证),直到显式重置或 JVM 重启为止。如果您要发送大量卷和/或大信息,这可能会导致过量内存使用。如果您的目标是测试内联可部署路由,请考虑在测试中使用 NotifyBuilder 或 AdviceWith,而不是将 Mock 端点直接添加到路由中。有两个新选项 retainFirst,而 retainLast 可以用来限制 Mock 端点保留在内存中的消息数量。
100.1. 依赖项 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
当在红帽构建的 Camel Spring Boot 中使用 模拟 时,请确保使用以下 Maven 依赖项来支持自动配置:
<dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-mock-starter</artifactId> </dependency>
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-mock-starter</artifactId>
</dependency>