- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想为我的 Robolectric 测试用例之一使用不同的资源目录。在这种情况下,我想使用 release-variant 资源。问题是我无法让它工作,而且我没有在网上看到任何使用此配置的示例。它仍然使用调试资源(我正在运行 gradle testDebug,其中“Debug”是我在 Gradle 中的构建类型之一)。我设置的目录相对于 list 所在的目录是正确的。我也试过在“build/intermediates/..”中引用 ref 文件。配置好像一点作用都没有。
@RunWith(RobolectricTestRunner.class)
@Config(resourceDir = "../../variant_resources/release/res")
..
@Test
public void testHowThingsAreUsingReleaseResources() {
..
}
我正在使用 Robolectric 2.4-SNAPSHOT有没有人使用这个配置有更好的运气?有没有明显的错误?
最佳答案
如果资源文件根据子文件夹而变化,则可以为资源指定限定符。请参阅 Qualified Resources 上的 RoboElectric 页面.
带有qualifiers
参数的@Config
属性可用于指定资源的限定符。
例如如果有资源:
values/strings.xml
values-en/strings.xml
values-en-port/strings.xml
... 那么属性 @Config(qualifiers="en-port")
将确保 values-en-port/strings.xml
资源是用过。
加载不同资源的另一种方法(如果这仅适用于某些测试)是实现 RobolectricTestRunner
类的不同实现,加载不同的资源路径。这里有一个很好的例子来说明如何做到这一点:
关于android - 为 Robolectric 测试用例设置 resourceDir,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26307945/
我想为我的 Robolectric 测试用例之一使用不同的资源目录。在这种情况下,我想使用 release-variant 资源。问题是我无法让它工作,而且我没有在网上看到任何使用此配置的示例。它仍然
我有一个单独的资源文件夹,我想将其添加到 IDEA 类路径中。我不使用 main/resources 的原因是我需要 JAR 之外的文件夹以允许编辑 XML 配置文件。 在 IDEA 中是这样的 ap
我是一名优秀的程序员,十分优秀!