много хороших вопросов.
Если ваш проект вообще не тестируется и уже выполняется, вы должны вводить тесты постепенно.Когда вам нужно разработать новый тест записи функции для этой функции, классы, которые вы собираетесь изменить, и функции, которые могут быть повреждены.То же самое, когда вы исправляете ошибки.Сначала напишите тест, который воспроизводит ошибку, а затем исправьте ее.
Я использовал JUnit и TestNG.Оба почти одинаковы.TestNG имеет группы, то есть вы можете пометить тест как принадлежащий к группе, такой как разработка, сборка, интеграция и т. Д. Это особенно актуально, если у вас много тестов, и для их запуска требуется значительное время.
У вас уже есть автоматическая сборка?Если не начать с этого.Если вы предпочитаете использовать Maven, это относительно просто.Когда ваша сборка будет готова, напишите пару модульных тестов (просто чтобы что-то потерпеть неудачу ...) Затем установите Hudson / Jenkins и определите ваш проект там.Люди увидят, как здорово, что после того, как вы зафиксировали новый код, сборка запускается практически сразу, и вы увидите все неудачные тесты.Возможно, попытайтесь показать силу TDD своему боссу и объясните ему, что он должен заставить всех членов команды писать тесты.
Если у вас достаточно энергии, представьте Sonar своей компании.Люди увидят, насколько ужасен код, который они пишут, и насколько плохо тестовое покрытие.Они увидят, как быстро растет охват тестированием, и, вероятно, будут больше инвестировать в модульное тестирование.
Короче, удачи.Вы на правильном пути.