【发布时间】:2021-05-12 10:01:58
【问题描述】:
尝试按照如何测试使用 DI (https://masstransit-project.com/usage/testing.html#testing-using-dependency-injection) 的 Saga 的示例
var provider = new ServiceCollection()
.AddMassTransitInMemoryTestHarness(cfg =>
{
cfg.AddSagaStateMachine<TStateMachine, TInstance>()
.InMemoryRepository();
cfg.AddSagaStateMachineTestHarness<TStateMachine, TInstance>();
})
.BuildServiceProvider(true);
...
但是,我无法使用 Saga 上的计划事件进行测试。我正在关注https://masstransit-project.com/usage/sagas/automatonymous.html#schedule的示例
我通过在我的消息总线配置中添加 AddRabbitMqMessageScheduler 和 UseDelayedExchangeMessageScheduler 使其与 RabbitMQ 一起使用。
在测试中我得到以下异常:
The payload was not found: MassTransit.MessageSchedulerContext
我想这是因为我没有为提供者配置正确的东西。我正在尝试找到正确的扩展方法,但我想可能不支持与 AddMassTransitInMemoryTestHarness 结合使用?
【问题讨论】:
标签: masstransit automatonymous