Я унаследовал проект Android, для которого нужно настроить покрытие кода. Не сделав много для Android и почти так же мало для Gradle, я начал поиски полезного руководства. Как ни удивительно, первые несколько руководств оказались очень полезными, и я смог включить плагин jacoco gradle и включить покрытие кода. С помощью Дженкинса я даже составил отчет о покрытии. Пока все выглядит нормально.
Однако, взглянув на отчет, я почувствовал запах рыбы. Соотношение между тестами и охватом казалось слишком маленьким. Дальнейшее расследование выявило виновного.
Сами тесты написаны скорее как функциональные, а не как модульные. Это было бы нормально. Однако в модуле библиотеки проекта нет тестов. Вместо этого тесты библиотеки написаны в модуле gui (поскольку именно там используется библиотека).
Поэтому, хотя большая часть функциональных возможностей библиотеки покрывается тестами, покрытие создается только для материала из модуля gui.
Проект
- Модуль Gui
---- исходники графического интерфейса
---- все тесты
- Библиотечный модуль
---- источники библиотеки
Нет, я давно искал рабочее решение. К сожалению, все, что мне удалось найти, - это объединить результаты покрытия модульных и интеграционных тестов .exec в один отчет (или другие решения на основе модульных тестов - ни одно из которых не работает для инструментальных).
Что мне нужно, так это сгенерировать покрытие для источников из модуля библиотеки на основе тестов модуля Gui.
Поскольку я спотыкаюсь здесь в темноте, возможно ли хоть что-нибудь подобное?