2016-12-20 3 views
0

Я новичок в Spring JMS, я пытаюсь протестировать метод, который использует @JMSListener.
У вас есть идея, как протестировать это с помощью mockrunner или другого инструмента, который вам известен?JUnit test for @JmsListener

Я видел этот образец, но я не уверен, применим ли это для моего дела. https://dzone.com/articles/mockrunner-jms-spring-unit

@Service 
public class MyJMSService { 

    @JmsListener(destination = "jms/queuename") 
    public void processMessage(ObjectMessage msg) throws JMSException { 
     //do stuff 
    } 
} 

ответ

1

Я не использовал mockrunner. Но он должен быть похож на другие насмешливые рамки, такие как eazymock или mockito. То, что вам нужно сделать, - высмеять все внешние вызовы. В вашем тестовом классе внутри @BeforeMethod вы можете создавать и инициализировать mocks. Затем вы записываете mocks внутри вашего тестового метода, говоря, что если это вызвано с этими аргументами, просто верните это. Затем вы проверяете ложные взаимодействия. Надеюсь это поможет. Счастливое кодирование.