公交测试线束

时间:2018-11-22 13:09:39

标签: .net rabbitmq masstransit

我一直在使用InMemoryTestHarness进行公共交通项目的单元测试。

我已参考以下github代码进行处理

ConsumerTest_Specs.cs

有人可以解释一下以下属性

  • Sent
  • Published
  • Consumed

InMemoryTestHarness _harness对象的实际含义。

尽管代码中都有与之关联的测试方法,但我希望对其进行更多说明。

谢谢。

1 个答案:

答案 0 :(得分:1)

我知道评论的答案很简洁,但是我认为可以通过添加一些入场信息来使其更加清晰。

InMemoryTestHarness代替m MessageBroker 用于单元测试实例,就像 Smart Mock 一样。因此,作为经纪人,它具有所有已发布的消息,而且还跟踪所有已传输的消息。

  • 已发送:直接命令/消息,就像某些RPC一样,但是使用消息代理作为通道。线束处于活动状态时使用Send()方法的所有消息均在此处复制。
  • 已发布:类似事件的消息,遵循PubSub模式。线束处于活动状态时使用Published()方法的所有消息均在此处复制。
  • 已使用:线束处于活动状态时消耗的所有消息。在这里,我们有一个重要考虑

    只有在安全带中注册的使用者才会使用消息,因此您可以控制哪些使用者处于活动状态