Bitrise中的AndroidTest资源文件夹

时间:2019-01-15 09:32:22

标签: android android-testing ui-testing bitrise

我正在Bitrise中配置工作流,以运行针对Android项目的检测测试。我不知道为什么,但是在Bitrise ui测试期间AndroidTest资源目录不可用。我的build.gradle

中有这个
sourceSets {
        androidTest {
            resources.srcDirs += ['src/AndroidTest/assets']
        }
    }

我正在执行此操作以从测试中加载资产:

InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(filename);

这在本地运行正常,但是在Bitrise中找不到资产。对这个问题有任何想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

我找到了解决此问题的解决方法。我没有在src/AndroidTest/assets中添加资源,而是创建了一个仅用于调试构建变体的新资产文件夹:

enter image description here

在这种情况下,我不再需要将资产添加为其他文件夹,因为它已经包含在测试apk中。使用debug build变量,此文件夹将不包含在发行版APK中,因此该解决方案对我来说效果很好。

唯一的区别是现在为了加载资源,我需要通过以下方式通过测试内部的上下文进行加载:

InputStream inputStream = InstrumentationRegistry.getTargetContext().getAssets().open("mock/" + filename);