Невозможно получить отчет об испытательном покрытии в эспрессо

Не удалось получить отчет о покрытии Espresso Code, я новичок в Android Studio и попытался выполнить настройку для создания отчета.

Пожалуйста, найдите параметр build.gradle:

apply plugin: 'com.getkeepsafe.dexcount'
apply plugin: 'realm-android'
apply plugin: 'jacoco'

 buildTypes {
        debug {
            debuggable true
            minifyEnabled false
            multiDexEnabled true
            testCoverageEnabled true
        }

Когда я запускаю записанный тест с помощью CreateDebugAndroidTestCoverage, я получаю следующий отчет:

Я ожидаю столбцы с методами, детали строки и т. Д.:

Пожалуйста, найдите снимок экрана для ожидаемого типа отчета:

1 ответ

Вам необходимо добавить конфигурации для отчета jacoco, создав задачу в файле Gradle вашего модуля (как правило, app/build.gradle). И в этой задаче нужно добавить createDebugCoverageReportза depnedsOnимущество. Покажу на примере, как это выглядит:

      // Task declaration
task jacocoTestReport(type: JacocoReport) {
    // Runs only after the dependencies are executed
    dependsOn = ['testDebugUnitTest', 'createDebugCoverageReport']
    // Export formats
    reports {
        xml.enabled = true
        html.enabled = true
    }

    sourceDirectories.from = files(coverageSourceDirs)
    classDirectories.from = fileTree(
            dir: './build/intermediates/classes/debug',
            excludes: ['**/R*.class'
            ])

    // Inform Gradle where the files generated by test cases - are located
    executionData.from = fileTree(dir: project.buildDir, includes: [
            'jacoco/testDebugUnitTest.exec',
            'outputs/code_coverage/debugAndroidTest/connected/*.ec'
    ])
}

Теперь вы можете запустить эту задачу с покрытием, и оно предоставит вам покрытие.

Другие вопросы по тегам