2015-07-14 2 views
0

Я использую activemq и пытаюсь отправить, можно ли проверить, если мой собственный MOCK успешно отправил сообщение в очередь. Я использую Activemq & хочу, чтобы автоматизировать тест, где, mock отправить сообщение в очередь и с помощью спока вы убедитесь, что сообщение было отправлено.JMS Проверка очередей с помощью spock

+0

Ваш вопрос не очень понятно. Отправьте код, который вы пытаетесь проверить. Также вы уверены, что ваш вопрос связан с geb? – kazanaki

+0

У меня уже есть мой ответ. Спасибо, что запросил. –

+0

Возможно, вы можете поместить свой ответ здесь, чтобы другие могли его увидеть. Это может быть полезно и для других. – kazanaki

ответ

0

Вы можете сначала создать QueueBrowser, а затем использовать перечисление, чтобы получить количество сообщений. Затем пусть цикл пробегает, пока объект перечисления не имеет элементов. Затем проверьте свое сообщение в этом цикле, если оно есть. Код должен как-то выглядит так

 QueueBrowser qbrowser = session.createBrowser(QueueName); 
     Enumeration messages = qbrowser.getEnumeration(); 
     while (messages.hasMoreElements()) 
     { 

      TextMessage message = (TextMessage) messages.nextElement(); 
      String a=message.getText(); 


      if (Message is there) 
      { 
       return true; 
      } 
     } 

Приветствия :)

Смежные вопросы