2015-06-01 3 views
2

У меня есть единичный тест, в котором я могу проверить отправку сообщений DDS. Тем не менее, I также хотят реализовать возможность тестирования считывателей сообщений.Тестирование приема сообщения считывателя DDS для теста java unit

Проблема связана с установкой программ для создания DDS-считывателей и писателей. Если я попытаюсь сделать читателей, которые мне нужны, у них уже есть тот же topic, что и писатель, и из-за этого возникает исключение.

Неужели кто-нибудь таким образом вычислил способ имитации отправки сообщений DDS читателю, как если бы они пришли из писателя DDS? Внутри одного компьютера и без использования отдельных компьютеров в сети для этого.

+0

Какую версию DDS вы используете? И что именно вызывает это исключение? –

+0

RTI и создать тему, так как темы уже созданы из-за того, как работает моя реализация. – jgr208

ответ

1

Вы можете использовать lookup_topicdescription() на DomainParticipant, чтобы получить ссылку на ранее созданный Topic, если он существует. В псевдо-коде, вы могли бы сделать что-то вроде

use lookup_topicdescription() to see if topic exists 
if topic does not exist 
    use create_topic() to create the topic 

Если приложение делает это в несколько потоков, то вам придется захватить и снять блокировку вокруг этого кода.