有没有办法获取所有注册消费者的名单?现在,我需要编写一个测试,以确保所有必需的队列都已注册使用者。不幸的是,这是不可能的,或者至少我不知道一种方法。
我的测试应该涵盖那种情况,当您忘记注册一个情况并且很难发现时,除非您使用请求/响应情况,否则会抛出超时异常。
Moq并没有太大帮助,因为大多数情况是它是带有约束的通用方法(如AddConsumer),在验证使用特定参数调用某些方法时,这是一个很大的问题。我可以将其替换为非泛型调用,但我想将其用作最后的选择。
谢谢
答案 0 :(得分:0)
配置容器后,您可以直接使用IServiceCollection
来检查注册是否存在。
Assert.That(services.Any(x => x.ServiceType == typeof(SomeConsumer));
为每个消费者做到这一点。