Пересечение последовательностей данных через InputStream и OutputStream - PullRequest
1 голос
/ 17 октября 2011

Я разработал класс Java, который реализует некоторый протокол сервера. Например, у него есть метод getProtocolVersion(), который возвращает последнюю версию протокола. Объект этого класса связан с сервером через реализации InputStream и OutputStream.

У меня есть тест с заглушками для каждой команды сервера. Каждый тест создает ByteArrayInputStream и ByteArrayOutputStream с ожидаемыми клиентскими запросами и ответами сервера, чтобы я мог выполнить тестирование логической единицы моей реализации протокола с помощью JUnit. Это работает, но создание прибора (подготовка данных) для каждой команды слишком скучно.

Действительно ли в моем случае использовать насмешку? Является ли это решение менее сложным? Как смоделировать последовательности данных через потоки ввода и вывода?

1 Ответ

1 голос
/ 20 октября 2011

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...