Это моя первая настройка android test project
для тестирования android project
.Не удалось выполнить тестовый прогон: Не удалось выполнить контрольно-измерительный пуск из-за «java.lang.ClassNotFoundException»
Я создал очень простой тестовый пример, который я пытаюсь запустить, однако то, что у меня нет, не работает. Я получаю Test run failed: Instrumentation run failed due to 'java.lang.ClassNotFoundException'
.
Я бы сделал это более подробно, но я не получаю больше информации, например, какой класс он пытается найти и т. Д. Любые идеи о том, как получить дополнительную информацию об ошибке? Любые общие области, на которые я должен обратить внимание, или что-то, что может потребоваться для настройки, которое я пропускаю?
Ниже представлена информация из консоли:
[2013-04-16 13:21:49 - XyzProgramTest] Android Launch!
[2013-04-16 13:21:49 - XyzProgramTest] adb is running normally.
[2013-04-16 13:21:49 - XyzProgramTest] Performing android.test.InstrumentationTestRunner JUnit launch
[2013-04-16 13:21:49 - XyzProgramTest] Automatic Target Mode: launching new emulator with compatible AVD 'GalaxyNexusAPI_17'
[2013-04-16 13:21:49 - XyzProgramTest] Launching a new emulator with Virtual Device 'GalaxyNexusAPI_17'
[2013-04-16 13:21:53 - Emulator] extension WGL_ARB_make_current_read was not found
[2013-04-16 13:21:53 - Emulator] extension WGL_EXT_swap_control was not found
[2013-04-16 13:21:53 - Emulator] Failed to create pbuf surface for FB 0x3004
[2013-04-16 13:21:53 - Emulator] emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
[2013-04-16 13:21:54 - XyzProgramTest] New emulator found: emulator-5554
[2013-04-16 13:21:54 - XyzProgramTest] Waiting for HOME ('android.process.acore') to be launched...
[2013-04-16 13:22:55 - XyzProgramTest] HOME is up on device 'emulator-5554'
[2013-04-16 13:22:55 - XyzProgramTest] Uploading XyzProgramTest.apk onto device 'emulator-5554'
[2013-04-16 13:22:55 - XyzProgramTest] Installing XyzProgramTest.apk...
[2013-04-16 13:23:57 - XyzProgramTest] Success!
[2013-04-16 13:23:57 - XyzProgramTest] Project dependency found, installing: XyzProgram
[2013-04-16 13:23:57 - XyzProgram] Uploading XyzProgram.apk onto device 'emulator-5554'
[2013-04-16 13:23:58 - XyzProgram] Installing XyzProgram.apk...
[2013-04-16 13:24:05 - XyzProgram] Success!
[2013-04-16 13:24:05 - XyzProgramTest] Launching instrumentation android.test.InstrumentationTestRunner on emulator-5554
[2013-04-16 13:24:07 - XyzProgramTest] Test run failed: Instrumentation run failed due to 'java.lang.ClassNotFoundException'
Дополнительные примечания:
В моей android test project
, я создал простой тест с пакетом, аналогичный пакету, который совпадает с классом, который я пытаюсь проверить в своем android project
. Так что-то вроде com.company.android.projectname
. Я указал это в разделе android test project
manifest
файла instrumentation
.
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.company.android.projectname" />
Когда я изменил это, чтобы соответствовать, что я получаю новую ошибку, которая говорит Test run failed: Unable to find instrumentation target package: com.company.android.projectname
Я не 100% уверен, что это targetPackage
должно быть, и если мне нужно несколько контрольно-измерительные приборы для каждого пакета я хочу проверить и т. д. Когда я установил его на com.company.android
, то есть, когда я получу java.lang.ClassNotFoundException
. Любые предложения будут оценены, в то же время я продолжу свои усилия, чтобы понять это самостоятельно.
Не могли бы вы объяснить, что именно вы изменили на втором этапе тестового проекта? –
Объясните больше пожалуйста –
@PawelByszewski, @Binghammer Его было некоторое время с тех пор, как я сделал сообщение, но из памяти ... Я переместил местоположение класса, расширившего 'android.app.Application'. Я думаю, что я сделал лучшую компоновку имен своих пакетов и переместил этот класс в этот процесс. Поскольку я сделал это, мне пришлось обновить его ссылку в файле манифеста. Например. Если в eclipse дважды щелкните мышью на 'AndroidManifest.xml', измените вкладку внизу на' AndroidManifest.xml', затем найдите '