Модульное тестирование с помощью JMS (ActiveMQ)
Как провести модульное тестирование с помощью JMS? Для этого это де-факто?
Я искал что-то
- Единичное тестирование для JMS: http://activemq.apache.org/how-to-unit-test-jms-code.html
- jmsTemplate: activemq.apache.org/jmstemplate-gotchas.html
- mockRunner: mockrunner.sourceforge.net/
Есть ли у вас какой-либо хороший опыт в отношении тех и предложений для меня?
Ответы
Ответ 1
В моем опыте (после попытки сделать то же самое), когда вы используете JMS, вы делаете что-то вроде
1) Получите сообщение JMS
2) Извлечь объект из сообщения
3) Сделайте что-то с Object
С этой точки зрения я предлагаю вам unit test # 3, но не утруждайте модульное тестирование №1 или №2 - не проверяйте рамки - сосредоточьтесь на тестировании своего кода. Я думаю, что это небольшая выгода (единичная) проверка вашей инфраструктуры (аналогично EJB-инфраструктуре и т.д.). Такие вещи лучше всего оставляют для интеграции/тестирования системы.
Ответ 2
Для простых тестов интеграции вы можете запустить брокер ActiveMQ во встроенном режиме. С Maven это может быть автоматизировано, поэтому вам даже не нужно загружать и устанавливать брокер сообщений ActiveMQ.
Ответ 3
Я ищу то же самое
Я сделал это один раз с JMock, с ним ypu может протестировать создание сообщения и в сочетании с hamcrest вы можете достичь приятных вещей.