AndroidStudio 2.3更新后RuntimeEnvironment.asp在机器人分子测试中的应用

AndroidStudio 2.3更新后RuntimeEnvironment.asp在机器人分子测试中的应用,android,android-studio,testing,robolectric,Android,Android Studio,Testing,Robolectric,我们正在Android Studio中使用Robolectric进行测试 最近从2.2.x更新到2.3后,我所有使用Robolectric运行的测试(即@RunWith(RobolectrictTestRunner.class))都失败 更具体地说,这里有一个ClassCastException,因为RuntimeEnvironment.application似乎不再返回为测试目的创建的自定义应用程序类型 MyTestApplication testApp = (MyTestApplicatio

我们正在Android Studio中使用Robolectric进行测试

最近从2.2.x更新到2.3后,我所有使用Robolectric运行的测试(即
@RunWith(RobolectrictTestRunner.class)
)都失败

更具体地说,这里有一个ClassCastException,因为
RuntimeEnvironment.application
似乎不再返回为测试目的创建的自定义应用程序类型

MyTestApplication testApp = (MyTestApplication) RuntimeEnvironment.application;
// do something with testApp
显然,我得到的是一个普通的旧的
android.app.Application
,而不是预期的类型

关键是:

  • 测试和配置都没有更改,我只做了AndroidStudio更新(我做了
    git重置--hard
    只是为了确保…)
  • 在命令行上,我的测试运行得很好,这让我觉得这可能是Android Studio中的测试运行程序的问题
:(

我想我尝试了Android Studio中的一切,比如清理/重建、重新同步gradle文件、无效缓存+重新启动…我尝试重新下载并重新安装Android Studio(2.2.3和2.3版本)。我清理了本地gradle缓存和本地
.m2
repo只是为了确保,但没有用…(

找到了解决方案:

  • 转到运行>编辑配置
  • 然后在JUnit>java应用程序的运行/调试配置中
  • 在字段工作目录中添加
    $MODULE\u DIR$

  • 同样的问题…到目前为止还没有解决任何问题。因为更改依赖关系非常繁琐,有时需要使缓存无效并重新启动?