Робототехнический тест андроид студии без покрытия - PullRequest
0 голосов
/ 30 января 2019

Прежде всего, я знаю, что этот вопрос кажется дубликатом.Однако, ни один из других вопросов не является достаточно недавним, чтобы все еще работать.Я пробовал.

Проблема заключается в следующем:

при использовании внутренней функциональности «Выполнить с покрытием» в Android Studio с jacoco в качестве генератора покрытия, я не получаю никакого покрытиядля тестов с RobolectricRunner.

моя часть testOptions на уровне моего приложения build.gradle:

testOptions {
        reportDir = "$project.buildDir/test-results"
        unitTests.returnDefaultValues = true
        unitTests {
            includeAndroidResources = true
        }
    }

Я использую

AS 3.3
Gradle 4.10
classpath 'com.android.tools.build:gradle:3.2.0'
testImplementation "org.robolectric:robolectric:4.0.1"
compileSdkVersion 25 //this is a hard dependecy, can't change this one

Я пробовал довольноНесколько вещей, которые можно было бы даже запустить в тестах с покрытием, если бы они были робоэлектрическими, но оно остается на уровне 0%.

В настоящее время у меня нет конкретных ссылок на jacoco, поэтому я думаю,что я использую версию Android Studio по умолчанию.Если кто-то может указать мне, как найти эту версию, я был бы признателен.

Если вам нужна дополнительная информация, я с радостью предоставлю ее.

1 Ответ

0 голосов
/ 30 января 2019

Я думаю, что вы должны попытаться добавить конкретную конфигурацию jacoco в ваш тестовый модуль, поэтому окончательный код здесь:


      testOptions {
        reportDir = "$project.buildDir/test-results"
        unitTests.all {
            jacoco {
                includeNoLocationClasses = true
                jvmArgs '-noverify'
            }
        }
    }

...