Вы должны попытаться отделить как можно больше основных функциональных возможностей, чтобы использовать фиктивные интерфейсы, а не API Maven напрямую. Таким образом, вы можете тестировать эту функциональность отдельно от среды.
например. если вы читаете данные из файла во время выполнения, вы должны внедрить Reader
в ваш класс, а не открывать сам файл. Затем отдельный класс может инициализировать входной поток в реальной жизни, но в модульных тестах вы можете предоставить StringReader
, предварительно загруженный с желаемой строкой.
Конечно, вам также нужны интеграционные тесты - их можно запустить проще всего, вызвав execute()
в вашем классе Mojo.