Как получить покрытие для Android project с помощью тестов Espresso


Я использовал для написания тестов Android с помощью Robotium и получения покрытия с помощью Emma.

Недавно я перешел на использование тестов Espresso, и у меня возникли проблемы с получением покрытия тестов инструментария. Я могу получить покрытие только для модульных тестов, использующих Robolectric. В настоящее время я использую для этого gradle и Jacoco. Лучший учебник, который я нашел, который помог мне добраться до этой точки, был: https://blog.gouline.net/2015/06/23/code-coverage-on-android-with-jacoco/

Это можно ли получить покрытие тестов Espresso, которые используют инструментарий Android?

1 6

1 ответ:

Плагин Android gradle имеет встроенную функцию.

Просто установите параметр testCoverageEnabled в true в вашем файле build.gradle:

android {
   buildTypes {
      debug {
         testCoverageEnabled = true
      }
   }
}

Затем используйте:

./gradlew connectedCheck

Или

./gradlew createDebugCoverageReport

Он выдаст отчет о тестовом покрытии в каталоге модуля:

/build/outputs/reports/coverage/debug/

Просто откройте index.html

Пример:

Введите описание изображения здесь