[英]java.lang.NoClassDefFoundError: android/test/AndroidTestCase
Hi i am getting the following error when trying to run my unit tests in eclipse: 嗨我在尝试在日食中运行我的单元测试时收到以下错误:
java.lang.NoClassDefFoundError: android/test/AndroidTestCase
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
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.AndroidTestCase
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 18 more
Test class 考试班
public class ResponseUtilTest extends AndroidTestCase {
private BubbleResponseUtil responseUtil;
private static final String TAG = ResponseUtilTest.class.getSimpleName();
@Override
protected void setUp() throws Exception {
super.setUp();
responseUtil = new ResponseUtil();
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
}
public void testGetdata() {
}
public void testIsOkMessage() {
}
public void testIsRetryMessage() {
}
public void testIsMatchedCRC() {
}
}
Thanks all i am using the Android sdk Eclipse edition i got from the android dev website. 谢谢所有我使用的android sdk Eclipse版本,我从Android开发网站获得。
Thanks again 再次感谢
You'll need to run your AndroidTestCase
towards the device/emulator. 您需要将
AndroidTestCase
运行到设备/模拟器。 I'm guessing you're just running it as a regular JUnit3
/ JUnit4
test case? 我猜你只是将它作为常规
JUnit3
/ JUnit4
测试用例运行?
ninetwozero is correct. ninetwozero是对的。 There is no device for the AndroidTestCase to run on.
AndroidTestCase没有设备可以运行。 You either need to attach a real device or create an Android Virtual Device (emulator) with the characteristics of your device.
您需要附加真实设备或创建具有设备特征的Android虚拟设备(仿真器)。
Right click the project with your tests in it, then Run As->Run Configurations. 右键单击包含测试的项目,然后单击Run As-> Run Configurations。 Select Android JUnit Test, click "New Launch Configuration" button.
选择Android JUnit Test,单击“New Launch Configuration”按钮。 Go to "Target" tab;
转到“目标”标签; use "Manager" button on bottom right to create your new emulator.
使用右下角的“管理器”按钮创建新的模拟器。 I'm sure other articles cover how to set up an emulator.
我确定其他文章介绍了如何设置模拟器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.