Android - Espresso тестирует покрытие кода для многомодульного проекта - PullRequest
0 голосов
/ 09 июля 2020

У меня есть такая структура проекта:

приложение-модуль

androidTest //Espresso tests covers classes from login and registration
main //Contains UI and business logic
test

вход в модуль

androidTest //No tests written
main //Contains UI and business logic
test //Only unit tests 

регистрация модуля

androidTest //No tests written
main //Contains UI and business logic
test

Проблема: у меня есть структура проекта, подобная android, и я могу создать отчет о покрытии кода jacoco, и он доступен для панели управления сонара. Проблема, с которой я столкнулся с тестами эспрессо, которые показывают покрытие кода только для модуля-приложения, но не для других модулей. Тесты эспрессо запускаются для потока использования, такого как регистрация, а затем вход в систему и вызов классов из других двух модулей, но покрытие для других двух модулей всегда составляет 0%.

  • Я хотел бы понять, как эспрессо генерирует покрытие кода похоже ли это на модульные тесты, где тот же пакет и класс, для которых написаны модульные тесты?
  • Как я могу увидеть построчное покрытие кода, написанного в тестах эспрессо? Какие классы охватывают эти тесты из всего проекта sr c.
  • Следует ли мне писать тест эспрессо и в других модулях? Не уверен, что он покажет покрытие.
  • Пожалуйста, предложите любую недостающую конфигурацию для покрытия кода эспрессо.

1 Ответ

0 голосов
/ 23 июля 2020

Jacoco и сонар не покажут покрытие, если в androidTest нет тестов для какого-либо конкретного модуля. Как только тесты появятся в androidTest, он начнет показывать данные покрытия на панели сонара.

...