5

Я пытаюсь написать контрольно-измерительный тест для моей MainActivity. Я последовал за ответами here. Тем не менее Android Studio не может найти никаких тестов. У меня есть класс ApplicationTest.java в папке androidTest. Вот содержание этого класса:Ошибка не установлена. Android Studio говорит: «тестов не было найдено»

package com.example.monicamarcus.mymusicplayer 

import android.app.Activity; 
import android.test.ActivityInstrumentationTestCase2; 
import com.example.monicamarcus.mymusicplayer.MainActivity; 

public class ApplicationTest extends ActivityInstrumentationTestCase2<MainActivity> { 
    public ApplicationTest() { 
     super(MainActivity.class); 
    } 

    public void testNextTrackButton() throws Exception { 
     Activity activity = getActivity(); 

     Button nextButton = (Button) activity.findViewById(R.id.nextTrackBt); 
     activity.runOnUiThread(new Runnable() { 
      @Override 
      public void run() { 
       nextButton.performClick(); 
       assertTrue(currentPosition < songList.size()); 
      }}); 
     activity.finish(); 
    } 
} 

Что не так с этим классом испытаний? Или с тестами? Я не получаю никаких ошибок, он просто не находит никаких тестов для запуска. После того, как я бегу ApplicationTest выход заканчивается следующими строками:

Running tests 
Test running startedFinish 
Empty test suite. 

Вот файл build.gradle для приложения:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     applicationId "com.example.monicamarcus.mymusicplayer" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     testApplicationId "app.src.androidTest.java.com.example.monicamarcus.mymusicplayer" 
     testInstrumentationRunner "android.test.InstrumentationTestRunner" 
    } 
    buildTypes { 
     debug { 
      minifyEnabled false 
     } 
     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

android { 
    useLibrary 'org.apache.http.legacy' 
} 

android { 

    sourceSets { 

     androidTest { 
      java.srcDirs = ['androidTest/java'] 
     } 

    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    androidTestCompile 'junit:junit:4.12' 
} 

Вот выход теста:

Testing started at 1:56 PM ... 
Target device: gt_i8190n-4790068ee9a750c6 
Installing APK: /Users/monicamarcus/AndroidStudioProjects/MyMusicPlayer/app/build/outputs/apk/app-debug.apk 
Uploading file to: /data/local/tmp/com.example.monicamarcus.mymusicplayer 
Installing com.example.monicamarcus.mymusicplayer 
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.example.monicamarcus.mymusicplayer" 
pkg: /data/local/tmp/com.example.monicamarcus.mymusicplayer 
Success 


Installing APK: /Users/monicamarcus/AndroidStudioProjects/MyMusicPlayer/app/build/outputs/apk/app-debug-androidTest-unaligned.apk 
Uploading file to: /data/local/tmp/app.src.androidTest.java.com.example.monicamarcus.mymusicplayer 
Installing app.src.androidTest.java.com.example.monicamarcus.mymusicplayer 
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/app.src.androidTest.java.com.example.monicamarcus.mymusicplayer" 
pkg: /data/local/tmp/app.src.androidTest.java.com.example.monicamarcus.mymusicplayer 
Success 


Running tests 
Test running startedFinish 
Empty test suite. 

После того, как я внесла некоторые изменения (я могу опубликовать их, если кому-то интересно), результат запуска класса контрольно-измерительных приборов следующим образом: «Запуск тестов. Запуск теста запущен. Нет результатов теста. Пустой набор тестов.»Никто не имеет опыт работы с такого рода тестов?

+0

Пробовали ли вы с помощью '@ Test' «@ UiThreadTest»? –

+0

@OfficerBacon Да, я пробовал, но то же самое происходит. – Monica

+0

Я изменил код. см. редактирование в вопросе. Любая помощь будет очень признательна. – Monica

ответ

2

В build.gradle, testApplicationId выглядит очень странно. Я хотел бы удалить это и testInstrumentationRunner. Значения по умолчанию должны быть в порядке. В частности, если вы не укажете testApplicationId, его будет создано путем добавления ".test" к вашим applicationId.

+0

Да, я где-то читал, что я должен указать эти в файле build.gradle. Тем не менее, я удалил эти две строки, но получаю тот же результат: пустой набор тестов. Спасибо, что пытались помочь. – Monica

+4

Удалось ли вам найти решение? Я столкнулся с той же проблемой и не могу ее решить. – JFreeman

+0

Любое решение? По одной и той же проблеме. –

-1

я просто создал новый проект в студии андроида 2.2.2, сделал андроид тест провала сделал Gradle куб.см, и получил на выходе ниже.

вы можете увидеть тест не работает на каждом устройстве в нижней части вывода.

этот question может быть связан.

отчеты в So35426990/приложение/сборки/отчеты/androidTests/связанные/index.html

d: \ AndroidStudioProjects \ So35426990> Gradle сС

Incremental java compilation is an incubating feature. 
The TaskInputs.source(Object) method has been deprecated and is scheduled to be 
removed in Gradle 4.0. Please use TaskInputs.file(Object).skipWhenEmpty() instea 
d. 
:app:preBuild UP-TO-DATE 
:app:preDebugBuild UP-TO-DATE 
:app:checkDebugManifest 
:app:preReleaseBuild UP-TO-DATE 
:app:prepareComAndroidSupportAnimatedVectorDrawable2421Library UP-TO-DATE 
:app:prepareComAndroidSupportAppcompatV72421Library UP-TO-DATE 
:app:prepareComAndroidSupportDesign2421Library UP-TO-DATE 
:app:prepareComAndroidSupportRecyclerviewV72421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportCompat2421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportCoreUi2421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportCoreUtils2421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportFragment2421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportMediaCompat2421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42421Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportVectorDrawable2421Library UP-TO-DATE 
:app:prepareDebugDependencies 
:app:compileDebugAidl UP-TO-DATE 
:app:compileDebugRenderscript UP-TO-DATE 
:app:generateDebugBuildConfig UP-TO-DATE 
:app:generateDebugResValues UP-TO-DATE 
:app:generateDebugResources UP-TO-DATE 
:app:mergeDebugResources 
:app:processDebugManifest 
:app:processDebugResources UP-TO-DATE 
:app:generateDebugSources UP-TO-DATE 
:app:incrementalDebugJavaCompilationSafeguard UP-TO-DATE 
:app:compileDebugJavaWithJavac UP-TO-DATE 
:app:compileDebugNdk UP-TO-DATE 
:app:compileDebugSources UP-TO-DATE 
:app:mergeDebugShaders UP-TO-DATE 
:app:compileDebugShaders UP-TO-DATE 
:app:generateDebugAssets UP-TO-DATE 
:app:mergeDebugAssets UP-TO-DATE 
:app:transformClassesWithDexForDebug UP-TO-DATE 
:app:mergeDebugJniLibFolders UP-TO-DATE 
:app:transformNative_libsWithMergeJniLibsForDebug UP-TO-DATE 
:app:processDebugJavaRes UP-TO-DATE 
:app:transformResourcesWithMergeJavaResForDebug UP-TO-DATE 
:app:validateSigningDebug 
:app:packageDebug UP-TO-DATE 
:app:assembleDebug UP-TO-DATE 
:app:preDebugAndroidTestBuild UP-TO-DATE 
:app:prepareComAndroidSupportTestEspressoEspressoCore222Library UP-TO-DATE 
:app:prepareComAndroidSupportTestEspressoEspressoIdlingResource222Library UP-TO- 
DATE 
:app:prepareComAndroidSupportTestExposedInstrumentationApiPublish05Library UP-TO 
-DATE 
:app:prepareComAndroidSupportTestRules05Library UP-TO-DATE 
:app:prepareComAndroidSupportTestRunner05Library UP-TO-DATE 
:app:prepareDebugAndroidTestDependencies 
:app:compileDebugAndroidTestAidl UP-TO-DATE 
:app:processDebugAndroidTestManifest UP-TO-DATE 
:app:compileDebugAndroidTestRenderscript UP-TO-DATE 
:app:generateDebugAndroidTestBuildConfig UP-TO-DATE 
:app:generateDebugAndroidTestResValues UP-TO-DATE 
:app:generateDebugAndroidTestResources UP-TO-DATE 
:app:mergeDebugAndroidTestResources 
:app:processDebugAndroidTestResources UP-TO-DATE 
:app:generateDebugAndroidTestSources UP-TO-DATE 
:app:incrementalDebugAndroidTestJavaCompilationSafeguard UP-TO-DATE 
:app:compileDebugAndroidTestJavaWithJavac 
:app:compileDebugAndroidTestNdk UP-TO-DATE 
:app:compileDebugAndroidTestSources 
:app:mergeDebugAndroidTestShaders UP-TO-DATE 
:app:compileDebugAndroidTestShaders UP-TO-DATE 
:app:generateDebugAndroidTestAssets UP-TO-DATE 
:app:mergeDebugAndroidTestAssets UP-TO-DATE 
:app:transformClassesWithDexForDebugAndroidTest 
:app:mergeDebugAndroidTestJniLibFolders UP-TO-DATE 
:app:transformNative_libsWithMergeJniLibsForDebugAndroidTest UP-TO-DATE 
:app:processDebugAndroidTestJavaRes UP-TO-DATE 
:app:transformResourcesWithMergeJavaResForDebugAndroidTest UP-TO-DATE 
:app:validateSigningDebugAndroidTest 
:app:packageDebugAndroidTest 
:app:assembleDebugAndroidTest 
:app:connectedDebugAndroidTest 

acme.so35426990.ExampleInstrumentedTest > useAppContext[KFFOWI - 5.1] FAILED 
     java.lang.AssertionError: failing 
     at org.junit.Assert.fail(Assert.java:88) 

acme.so35426990.ExampleInstrumentedTest > useAppContext[KFFOWI - 5.1.1] FAILED 
     java.lang.AssertionError: failing 
     at org.junit.Assert.fail(Assert.java:88) 

acme.so35426990.ExampleInstrumentedTest > useAppContext[Nexus 7 - 5.1.1] FAILED 

     java.lang.AssertionError: failing 
     at org.junit.Assert.fail(Assert.java:88) 
                :app:connectedDebugAndroidTes 
t FAILEDng 96% > :app:connectedDebugAndroidTest 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':app:connectedDebugAndroidTest'. 
> There were failing tests. See the report at: file:///D:/AndroidStudioProjects/ 
So35426990/app/build/reports/androidTests/connected/index.html 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug 
option to get more log output. 

BUILD FAILED 

Total time: 35.227 secs 

d:\AndroidStudioProjects\So35426990> 
Смежные вопросы