Я пытаюсь написать контрольно-измерительный тест для моей 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.
После того, как я внесла некоторые изменения (я могу опубликовать их, если кому-то интересно), результат запуска класса контрольно-измерительных приборов следующим образом: «Запуск тестов. Запуск теста запущен. Нет результатов теста. Пустой набор тестов.»Никто не имеет опыт работы с такого рода тестов?
Пробовали ли вы с помощью '@ Test' «@ UiThreadTest»? –
@OfficerBacon Да, я пробовал, но то же самое происходит. – Monica
Я изменил код. см. редактирование в вопросе. Любая помощь будет очень признательна. – Monica