使用mockstestingnode-amqp

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

我正在寻找一个好的unit testing策略,嘲笑amqp连接可以发送一个基于给定input的消息。 我已经看了看amqp-mock模块,但这似乎需要连接到一个真正的amqp服务器,这是我想避免的。

有没有人执行过类似的事情或有一个好的策略?

您可以通过使用“a”模块轻松地进行模拟:

// 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 

你可以尝试node-amqp-mock 。