Пустой набор с тестом на эспрессо

Я пытаюсь запустить простое "привет!" test, но я получаю пустой тестовый костюм, я могу найти проблему, это мой градиент:

apply plugin: 'com.android.application'

android {
compileSdkVersion 22
buildToolsVersion "22.0.1"

defaultConfig {
    applicationId "sku1l.eccc"
    minSdkVersion 17
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner
    "android.support.test.runner.AndroidJUnitRunner"
    packagingOptions {

        exclude 'LICENSE.txt'

    }
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.android.support:support-annotations:22.2.0'
androidTestCompile 'com.android.support:support-annotations:22.2.0'

androidTestCompile ('com.android.support.test.espresso:espresso-core:2.2'){
    exclude group: 'javax.inject'
}
androidTestCompile 'com.android.support.test:runner:0.3'
// androidTestCompile 'com.android.support.test.espresso:espresso-contrib:2.2'
}

А это тест:

import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withId;
import static android.support.test.espresso.matcher.ViewMatchers.withText;




 @RunWith(AndroidJUnit4.class)

 public class ApplicationTest   {


@Rule
public ActivityTestRule<MainActivity> mActivityTestRule= new     ActivityTestRule<>(MainActivity.class);

@Test
public void testVisibility() {
    onView(withText("Hello"))
            .check(matches(isDisplayed()));
    onView(withId(R.id.Hello)).check(matches(withText("Hello")));
}

}

это логкэт

Success


  Uploading file
local path:     C:\Users\sku1l\AndroidStudioProjects\elparche\app\build\outputs\apk\app-debug-androidTest-unaligned.apk
remote path: /data/local/tmp/sku1l.elparche.test
No apk changes detected. Skipping file upload, force stopping package instead.
DEVICE SHELL COMMAND: am force-stop sku1l.elparche.test
Running tests
Test running startedFinish
Empty test suite.

Я также редактирую конфигурацию и устанавливаю конкретный инструмент запуска: android.support.test.runner.AndroidJUnitRunner.

когда я это делаю, я получаю это в логарифме

Running tests
Test running startedTest running failed: Unable to find instrumentation info for:     ComponentInfo{sku1l.elparche.test/android.support.test.runner.AndroidJUnitRunner}
 Empty test suite.

Я надеюсь, что вы можете мне помочь... Спасибо


person Eddy Charry    schedule 12.08.2015    source источник


Ответы (1)


Хорошо, наконец, я нашел решение для этого, проблема была в proguard, вы можете исключить или удалить proguard во время тестирования, и все будет работать нормально, надеюсь, это поможет большему количеству людей.

person Eddy Charry    schedule 10.09.2015
comment
да, если бы я мог удалить proguard, я бы сделал это, но тогда я просто достиг предела в 65 тысяч методов. А с proguard он просто не работает. - person Lukas Hanacek; 14.09.2015
comment
Есть новости об этом @LukasHanacek? Я тоже получаю ту же проблему. - person Anthony; 11.02.2016
comment
У меня не было времени и настроения продолжать поэтому я сдался, но вы можете попробовать посмотреть направление testProguardFile - person Lukas Hanacek; 12.02.2016
comment
Используя экспериментальный сжиматель с useProguard false, проверьте developer.android.com/studio/build/ код сжатия.html - person Daniel Gomez Rico; 23.10.2017