0

在将我们的构建工具迁移到 Buck 时,我们偶然发现了 Android 单元测试的以下问题:

我们对视图模型的测试需要访问 R.java 以断言正确的资源被引用。

我们使用了 java_test 规则,但似乎没有找到 R.java。有一个构建 .apk 的 robolectric_test ,但我们只希望类路径中的 R.java 文件用于单元测试。

没有 android_test 规则是否有原因。有这样做的计划吗?

我们浏览了代码,发现我们需要查看 AndroidLibraryGraphEnhancer 并构建 Android 资源。

有什么建议吗?

4

1 回答 1

0

没有计划添加这样的规则,因为不清楚它应该做什么以及为什么robolectric_test还不够。

Buck 没有为 Robolectric 测试构建 apk。

你真的不想java_test用来测试 Android 代码,因为 Android SDK 和 Java SDK 是不同的。您必须测试 Android 代码,robolectric_test因为它使用 Android SDK。

于 2017-05-25T05:47:20.070 回答