所以我一直在尝试使用内存功能编写公共交通测试。我想知道人们在等待消费者执行方面的做法。在下面的例子中,使用睡眠或我也试过一个while循环,但不是任何一个的粉丝,任何更好的想法?我基本上想检查消费者是否已被执行。
[Fact]
public async Task SomeTest()
{
var busControl = Bus.Factory.CreateUsingInMemory(cfg =>
{
cfg.ReceiveEndpoint("commands", ec =>
{
ec.LoadFrom(context);
});
});
var address = new Uri(bus.Address, "commands")
await sendEndpoint.Send(MyExampleCommand());
Thread.Sleep(2000);
//Check nsubstitute mock received
}
答案 0 :(得分:2)
查看MassTransit内置的测试工具功能。他们应该给你一些如何测试它们的好主意。
您可以查看线束测试以了解它们应该如何使用。请注意,它们适用于任何测试框架,而不仅仅是NUnit。