这是我第一次设置一个Android测试项目来测试一个Android项目。
我创建了一个非常基本的测试用例,我试图运行它,但是我没有运行。我得到一个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 测试项目中,我创建了一个简单的测试,其中包含一个与我尝试在我的 Android 项目中测试的类匹配的包。所以像com.company.android.projectname
. 我已经在 Android 测试项目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
.