Как вы проводите модульное тестирование TCP-соединения?

Мне недавно дали возможность написать простой tcp-клиент для моего проекта, и из-за моего огромного незнания tcp / ip мне трудно его получить работать правильно.

Я обнаружил, что иногда у меня могут возникать странные проблемы с соединением, когда соединение отклоняется из-за того, что tcp-сервер не работает, или иногда я могу получить исключение при вызове приема.

Поскольку tcp-сервер - это черный ящик, и у нас нет доступа к нему, в этой ситуации мне интересно, как лучше всего написать для этого модульные тесты?

Я думаю, что я должен написать tcp-server и заставить его возвращать определенные входные данные, как я ожидал от реального сервера, или просто имитировать функции, связанные с возвратом данных идеальной ситуации.

Мне просто не нравится тот факт, что иногда у меня могут возникать странные проблемы с подключением / получением, и я хотел бы знать, как правильно написать модульный тест, который я могу повторно использовать / расширить в будущем, чтобы убедиться, что все, что работало раньше, должно все еще работать, если мой код или их код изменится.

спасибо

12
задан greatwolf 8 November 2011 в 02:11
поделиться