2012-12-03 116 views
2

我有一个使用AMQP执行远程过程调用的节点服务,所以它发布一个消息至给定AMQP交换,我们期望在给定的AMQP队列与该调用的结果的响应。测试节点AMQP使用嘲笑

我找了一个很好的单元测试策略,嘲笑AMQP连接能够发送基于给定输入的消息。我已经看过amqp-mock模块,但是这似乎需要连接到真正的amqp服务器,这是我想避免的。

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

回答

1

您可以轻松地嘲笑需要使用"a" module

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

你可以给node-amqp-mock一试。

+1

请注意,它现在已经过时,不会在最近的节点版本上运行。 – Maerlyn