Папка ресурсов AndroidTest в Bitrise

Я настраиваю рабочий процесс в Bitrise для запуска своих инструментальных тестов для проекта Android. Я не знаю почему, но каталог ресурсов AndroidTest недоступен во время тестов пользовательского интерфейса Bitrise. У меня есть это в моем build.gradle

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

и я делаю это, чтобы загрузить активы из моих тестов:

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

Локально это работает, но в Bitrise активы не найдены. Есть идеи по этому вопросу?

Спасибо!

1 ответ

Решение

Я нашел обходной путь для решения проблемы. Вместо добавления ресурсов внутри src/AndroidTest/assets Я создал новую папку ресурсов только для варианта отладочной сборки:

В этом случае мне больше не нужно добавлять ресурсы в качестве дополнительной папки, поскольку они уже будут включены в тестовый apk. Используя вариант отладочной сборки, эта папка не будет включена в релиз apk, поэтому это решение отлично работает для меня.

Единственное отличие состоит в том, что теперь, чтобы загрузить ресурсы, мне нужно сделать это через контекст внутри моего теста следующим образом:

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

Другие вопросы по тегам