2016-08-01 8 views
2

私はspring rabbitmqアプリケーションのいくつかのテストを書こうとしています。Springのrabbitmqテスト - RabbitListenerTestHarnessがリスナーを見つけられません

documentationから、RabbitListenerTestHarnessを使用した例が見つかりました。ソースにおいて

@RunWith(SpringJUnit4ClassRunner.class) 
@SpringApplicationConfiguration(classes = MyMain.class) 
public class MyClassTest { 

    @Test 
    public void myTest(){ 
     RabbitProperties.Listener listener = harness.getSpy("test_consumer2"); 
    } 
} 

、I注釈@RabbitListenerTest(capture = true, spy = true)を有するのRabbitMQに設定を作成するBeanを有する:

Iは、のように見える春にテストを作成しました。

また、私は、次の消費者有するソースにいくつかの理由

@Component 

パブリッククラスTestConsumerStubを{

@RabbitListener(
     id = "test_consumer2", 
     queues = "my_queue" 
) 
public void testHandler(){ 

} 

、ハーネス(RabbitListenerTestHarness harness)テストからオブジェクトは、ロードされません消費者との関係で。次の変数はnullです。 RabbitProperties.Listener listener = harness.getSpy("test_consumer2");

私は何を考えましたか?

答えて

1

RabbitListenerTestHarness豆をデバッグした後、どれが問題か分かりました。私は春のウサギのためにspring-boot-starter-amqpを使用していました。spring-rabbit-test私は明示的にバージョンspring-amqpと一致しないバージョンを書いていました。 spring-boot-starter-parentバージョンを1.4.0に更新しました。spring-ampqバージョン1.6.1は、私のspring-rabbit-testと同じバージョンです。

関連する問題