2014-12-02 91 views
0

我正在使用Spring-AMQP庫和RabbitMQ進行生產。我想寫一些能夠「乾淨地」工作的測試,並且我正在考慮使用嵌入式代理並嘲笑響應。我知道我不能嵌入Rabbit,但想知道Spring AMQP是否可以與Apollo或另一個可以在JVM中工作的代理一起工作。Spring-Amqp和Apollo

我很好,只發布和訂閱,並使用供應商特定的代碼來設置隊列,如果需要的話。

謝謝!

回答

0

否;雖然有一個普遍的抽象(在spring-amqp項目中),但目前只有RabbitMQ的具體實現(spring-rabbit)。

由於AMQP是一種有線協議,因此您可以將Spring AMQP下的rabbit客戶端與其他代理一起使用,但前提是代理(代理)支持相同的協議版本。阿波羅是AMQP 1.0,與RabbitMQ符合(0-9-1)的版本完全不同。

對於框架本身,我們使用Mockito來模擬兔子amqp-client我們可以在哪裏。對於模擬過於困難的更復雜測試以及集成測試,如果localhost上沒有代理,我們使用JUnit @RuleBrokerRunning)跳過測試。

+0

這就是我的想法。謝謝! – 2014-12-03 12:18:42