Android Eclipse Plugin: контрольно-измерительный тест Runner не указан
Я получаю эту ошибку при попытке запуска модульных тестов из Eclipse с Android Project. Список контрольных тестовых инструментов пуст в настройках Android.
[2009-06-17 23:57:51 - MyApp] ОШИБКА: В приложении не указывается android.test.InstrumentationTestRunner или не объявляет use-library android.test.runner
Также было досадно, что, поскольку я пытался запустить unit test один раз, это то, что я всегда хочу делать.
Ответы
Ответ 1
В Run Configuration
у вас может быть Android JUnit Test
, если в нем есть какие-либо новые записи о конфигурации запуска, вы удаляете его, а затем запускаете приложение, которое оно будет запускать.
ПРИМЕЧАНИЕ. Это может быть решением, если вы попытались запустить тестовый пример, прежде чем добавлять правильные строки в манифест, как описано в ответе от Josef. Если вы это сделали, удалите конфигурацию (которая будет жаловаться на то, что в заголовке не указан ни один контрольный тест-контролер), а затем снова запустите ее в качестве теста Android Junit Test, и он создаст правильную конфигурацию, набрав правильные вещи, которые вы добавили в манифест (см. ответы Йозефа для этого).
Ответ 2
Вероятно, вы потеряли узлы uses-library
и instrumentation
в AndroidManifest.xml
:
<manifest ...>
<application ...>
<!-- ... -->
<uses-library android:name="android.test.runner" />
</application>
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="your.package"
android:label="your tests label" />
</manifest>
Ответ 3
Одна вещь, которую я заметил в этой дискуссии, которая может быть отключена некоторыми людьми, заключается в том, что вам нужно убедиться, что элемент "инструментария" в вашем манифесте является дочерним "явным", а не "приложением". (Примеры здесь правильные, но это легко смешивается.)
http://developer.android.com/guide/topics/manifest/instrumentation-element.html
Если вы поместите свой инструментарий в приложение, он не будет поднят, и ваши варианты в плагине Eclipse ADT для инструментального бегуна могут быть пустыми. (Но ошибка не отображается и не отображается и т.д.)
Ответ 4
Просто сделайте правый щелчок на своем тестовом классе из Eclipse IDE и нажмите "Запустить как". После этого выберите "запустить конфигурацию", которая запустит окно Confiuration Window в eclipse, и вам нужно щелкнуть по переключателю рядом с "Runner Instrumentation" и выбрать сконфигурированный Runer Instrumentation из раскрывающегося списка. Теперь нажмите "Применить", а затем нажмите "Выполнить". Я думаю, что это решит вашу проблему.
Спасибо,
Smruti
Ответ 5
Это не в вашем коде, он просто затмение немного глючит. В ваших конфигурациях запуска можно попробовать запустить тест jUnit, но выберите "Запустить приложение" и эта ошибка исчезнет.
Ответ 6
Кроме того, что в манифесте вашего тестового приложения указаны указанные ниже элементы, проверьте в настройке "Запуск", что для поля "Инструментарий" установлено значение
"com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner".
Это то, с чем я столкнулся, когда выяснял, почему я тестирую, не будет работать.
манифеста:
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="your.package"
android:label="your tests label" />
and...
<uses-library android:name="android.test.runner" />
Ответ 7
Проблема в том, что когда вы создали проект, у вас был бы AVD, поэтому эта конфигурация отсутствовала бы. Мой предложенный способ - сначала создать AVD, а затем создать проект андроида:).
Если бы вы уже создали проект, и если у вас мало кода, который вы написали, я бы предложил его удалить и создать новый.