库模块中的检测和JVM / Robolectric单元测试无法访问另一个模块中的类

时间:2016-02-19 17:19:35

标签: android unit-testing android-studio robolectric

不确定为什么会在最新的Android Studio 2.0 Beta 5中发生这种情况。这种类型的scenerio适用于旧版Android Studio。在库的单元测试中从另一个库访问工件的有效解决方法是什么?

为了演示这个问题,我有一个由两个库模块组成的简单项目。

  1. AbstractFruits
  2. ConcreteFruits
  3. 下图显示了AbstractFruits

    中的简单界面

    AbstractFruits-> IApple.java enter image description here

    对于ConcreteFruits库,我已将其配置为依赖于AbstractFruits

    ConcreteFruits->的build.gradle enter image description here

    您可以看到自动完成功能正常,因为IApple.class是ConcreteFruits中源代码的类路径的一部分。

    ConcreteFruits-> GrannySmith.java enter image description here

    但是,当我尝试在Android Instrumented路径中创建实例变量时,它不会自动完成,因为它无法看到它。

    ConcreteFruits-> ApplicationTest.java enter image description here

    同样来自JVM测试,它也无法从AbstractFruits库中看到IApple。

    ConcreteFruits-> ExampleUnitTest.java enter image description here

    任何人都知道如何使这项工作。我不想在共享库之外的项目中重复IApple,AbstractFruits

    作为参考,这里是共享abstractfruits库的gradle:

    AbstractFruits->的build.gradle enter image description here

    更新 - 通过命令行工作正常,但不是IDE

0 个答案:

没有答案