【发布时间】:2014-09-01 19:45:33
【问题描述】:
我在 Android Studio 中有 maven 项目。我正在使用 Robolectric 和 Roboguice 来简化应用程序的测试。
我写了大约 30 个测试。它们在 IDE 中都可以正常工作,但是当我使用
运行它们时,它们中的 2 个都失败了mvn test
在通过 XML 添加到 Activity 的 Fragment 上测试失败。此片段的 onActivityCreated 方法访问一个注入的引用,此时该引用显然为空(导致 NPE)。
我想知道 AS 和纯 maven 之间的运行时环境有什么区别。
编辑:
标记为单例的对象在之前的测试中被释放,导致NPE。不知何故,AS 测试运行器与 maven 的工作方式不同,在不同的上下文中运行测试。知道怎么可能吗?
【问题讨论】:
-
可能是AndroidManifest位置不同
-
可能与 Maven 如何处理并行测试执行有关。见相关讨论stackoverflow.com/questions/3365628/…和官方文档Fork options and parallel execution
标签: android maven android-studio robolectric