【发布时间】:2013-11-14 07:07:42
【问题描述】:
我想知道是否有办法通过配置将 NServiceBus 置于将消息写入内存队列而不是物理队列的模式?
我的用例是Integration testing。理想情况下,我想避免将消息放在物理队列上,以避免集成测试对队列的依赖。我的测试侧重于测试将消息放在总线上的代码的逻辑,但如果队列不存在,测试将失败。
现在我在测试中手动创建队列,但想避免这种情况。
每当我执行bus.Send(queueMessageObject); 时,我都希望消息仅存储在内存中(或者可能只是被忽略,因为我只是在测试将其放在那里的逻辑)。
在我的unit tests 中,我可以通过使用 MOQ 模拟 IBus 对象来解决这个问题。但是,在我的集成测试中,我没有模拟总线,而是希望将消息发送到内存端点。我也不想使用与bus.Send() 不同的api 将消息放在总线上。
是否有当前/未来的 NServiceBus 配置设置可以做到这一点?
【问题讨论】:
标签: c# unit-testing integration-testing nservicebus