2011-11-27 56 views
1

我创建的测试项目...我已经updloaded的junit.jar中(运行时间配置类路径 - >用户条目 - >的junit.jarjava.lang.NoClassDefFoundError:安卓/测试/ ActivityInstrumentationTestCase2

我得到以下errror当我运行的代码......

java.lang.NoClassDefFoundError: android/test/ActivityInstrumentationTestCase2 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(Unknown Source) 
    at java.security.SecureClassLoader.defineClass(Unknown Source) 
    at java.net.URLClassLoader.defineClass(Unknown Source) 
    at java.net.URLClassLoader.access$000(Unknown Source) 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:693) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:429) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
Caused by: java.lang.ClassNotFoundException: android.test.ActivityInstrumentationTestCase2 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClassInternal(Unknown Source) 
    ... 17 more 
+0

您是否正在执行 您的android项目的根目录(清单文件所在的位置)的测试? –

+0

出侧android文件夹.. – ChanGan

回答

0

android.test.ActivityInstrumentationTestCase2是不是在你声称已经加入到classpath中的JUnit JAR。

这看起来像你的一个。

你编译过代码吗?如果没有,请这样做。

您是否将路径添加到您的.class文件的写入位置?如果没有,请这样做。

+0

可以请你给我如何添加类路径..运行 - >运行方式 - >运行配置 - >类路径。从eclipse文件夹中添加Junit.jar。?它是否正确? – ChanGan

0

按照以下说明:http://developer.android.com/guide/developing/testing/testing_eclipse.html

基本上,你不必添加junit.jar到类路径中。

+0

嗨,你可以请分享你的邮件ID ..我会寄给你任何我做的..我跟着 http://www.google.com/#sclient=psy-ab&hl=en&qscrl=1&source=hp&q=robotium+with + APK&qscrl = 1&PBX = 1&OQ = robotium +与+ APK&水溶液= F&AQI =&AQL =&gs_sm = E&gs_upl = 71706l8​​5633l0l86082l72l37l27l3l5l6l960l12650l0.13.10.4.2.2.5l50l0&BAV = on.2,or.r_gc.r_pw。,cf.osb&FP = 2b1c1827496a067e&BIW = 1366&波黑= 643我已经在eclipse和系统类路径中添加了junit.jar ...仍然有同样的问题.. – ChanGan

-1

这听起来很奇怪。但所有你需要做的是导入独奏之前,你导入类,它的作品。至少它为我做了。我不知道为什么我试过,但它所需要的只是切入进口com.jayway.android.robotium.solo.Solo;并将其粘贴在包装后面。

+0

这很奇怪,可能与导入的顺序无关。文件中的顺序绝对不重要,因为运行时将确保正确的顺序。 – WarrenFaith

8

您需要将其运行为Android JUnit测试而不是JUnit测试。 转到项目浏览器中的项目 - >右键单击 - >Android JUnit测试

+0

谢谢!这正是我做错的地方。 – Seth

0

我有类似的问题。对我来说,改变robotium-solo.jar的“顺序和导出”(属性 - >构建路径 - >顺序和导出),即将其移动到顶部,并通过右键单击项目明确选择运行为'android JUnit test'解决了问题。也尝试运行提供的sample project

相关问题