我是一名长期的 Java 开发人员,拥有多年的 Java EE、Ant、Maven、单元测试、模拟等。我目前正在使用 gradle 构建 android 应用程序并正在考虑对它们进行单元测试。它让我把头发扯掉了!
我的阅读表明要测试一个应用程序,我必须在测试目录中创建另一个应用程序。但我不确定这个嵌入式应用程序如何看到主要的应用程序类。我认为谷歌提出这个是因为与不同的清单有关。我不确定为什么。
在不使用这个嵌入式应用系统的情况下,我已经能够通过在 APK 中包含测试类和主类、将检测声明添加到清单、部署它并运行测试运行程序来运行单元测试。但我不想用应用程序类编译测试类并包括所有依赖项,所以这不是一个真正的选择,我不确定清单更改的效果,因为我找不到任何关于效果的文档.
遵循 maven 构建系统的 gradle 不理解这些。另请注意,android 方式似乎是嵌入式子项目(测试)依赖于主父项目,这与 gradle 和 maven 完全相反。
另一种选择似乎是将测试项目分开,以便它完全在应用程序项目之外。但实际上,我想使用与 maven 类似的约定,只需将测试与测试资源中的清单一起放在单独的目录中即可。
有没有人设法在运行单元测试的模拟器上进行测试,遵循更 maven 的目录结构?