В настоящее время я пишу клиент-серверное приложение Java. Поэтому я хочу реализовать две библиотеки, одну для клиента и одну для сервера. Связь между сервером и клиентом имеет очень строгий протокол, который я не хочу тестировать с помощью JUnit.
В качестве инструмента сборки я использую Maven и Husdon Server для продолжения интеграции.
На самом деле у меня нет хорошей идеи, как протестировать эти библиотеки клиент / сервер.
Я получил следующие подходы:
Просто напишите Dummy Client для тестирования сервера и напишите Dummy Server для тестирования клиента.
Недостатки: К сожалению, это приведет ко многим дополнительным работам. Я не могу быть на 100% уверен, что клиент и сервер могут работать вместе, потому что я не уверен, что тесты полностью идентичны.
Напишите отдельный тестовый проект, который тестирует клиент и сервер вместе.
Недостатки: Юнит-тесты не относятся к самому Проекту, поэтому Хадсон не будет запускать их автоматически. Каждый, кто что-то меняет в одной из этих библиотек, должен будет запустить тесты вручную, чтобы убедиться, что все правильно. Также я не буду получать отчет о покрытии кода.
Есть ли лучшие подходы для тестирования таких кодов?
Возможно, протестируйте мультимодульный проект Maven или что-то в этом роде.
Надеюсь, у кого-нибудь есть хорошее решение для этой проблемы.
Спасибо.