【问题标题】:Testing node-amqp using mocks使用模拟测试 node-amqp
【发布时间】:2012-11-21 03:23:20
【问题描述】:

我有一个节点服务,它使用 AMQP 来执行远程过程调用,因此它将消息发布到给定的 amqp 交换器,并期望在给定的 amqp 队列上得到响应以及该调用的结果。

我正在寻找一个好的单元测试策略,它可以模拟 amqp 连接,可以根据给定的输入发送消息。我研究了 amqp-mock 模块,但这似乎需要连接到真正的 amqp 服务器,这是我想避免的。

有没有人实现过类似的东西或对此有好的策略?

【问题讨论】:

    标签: javascript node.js amqp


    【解决方案1】:

    您可以使用 "a" module 轻松模拟 require:

    // Example faking require('./foo') in unit test:
    var fakeFoo = {};
    var expectRequire = require('a').expectRequire;
    expectRequire('./foo').return(fakeFoo);
    
    // in sut:
    var foo = require('./foo'); // returns fakeFoo
    

    【讨论】:

      【解决方案2】:

      你可以试试node-amqp-mock

      【讨论】:

      • 请注意,它现在已经过时了,不能在最近的节点版本上运行。
      • 4 年后,我们是否有更好的选择来使用 mock 测试 rabbitmq 客户端代码?
      猜你喜欢
      • 2017-10-17
      • 2016-12-09
      • 1970-01-01
      • 2023-03-03
      • 2020-09-08
      • 2016-02-19
      • 2017-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多