Если нет требования использовать tomcat - можно использовать springboot, он позволяет запускать и распространять приложение как обычную консольную программу, используя встроенный веб-сервер.
Также в springboot есть возможность писать интеграционные тесты:
https://www.baeldung.com/spring-boot-testing