java.lang.NoClassDefFoundError:android和junit测试

我看到我不是唯一有这个问题的人,但是我没有找到正确的答案.
我有一个我想要测试的 Android项目.我为我的项目的每个类创建一个junit测试类.
我的问题是当我运行我的测试,我有以下错误
java.lang.NoClassDefFoundError: android/content/Context

这是我的班级考试:

public class DevicesBDDTest extends TestCase {

    DevicesBDD bdd;

    /**
     * @throws java.lang.Exception
     */
    protected static void setUpBeforeClass() throws Exception {
    }

    /**
     * @throws java.lang.Exception
     */
    protected static void tearDownAfterClass() throws Exception {
    }

    protected void setUp() throws Exception {
        super.setUp();
        Context ctx = mock(Context.class);
        final MaBasesqliteInterface mockMaBasesqlite = mock(MaBasesqliteInterface.class);
        bdd = new DevicesBDD(ctx){
            @Override
            public MaBasesqliteInterface createMaBasesqlite(Context context) {
                return mockMaBasesqlite;
            }
        };
    }


    protected void tearDown() throws Exception {
        super.tearDown();
    }

    public void test() {
        assertEquals(1,1);
    }
}

我的类DeviceBDD需要一个对象上下文,因此我创建一个模拟(与mockito).我也试过一个对象MockContext,但它不工作.

这是我的Java构建路径:

> mockito-all-1.9.5.jar
> Android 2.1
– >的android.jar
> Android依赖关系
– > annotations.jar
> Junit 3
– >的junit.jar

解决方法

不知道如果我有同样的问题,但我正在使用毕业生,由于某些原因,测试不再运行,与您有同样的错误.我尝试清洁和重建,但没有效果.经过几个小时的挫折,并试图找到一个答案,我在GitHub线程中遇到了简单的解决方案:

I resolved this issue by removing the .gradle folder in my project and rebuilding the project.

(感谢vpetrov)

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...