Как подключить графический интерфейс Android Studio тестирования к Gradle задачи? - PullRequest
1 голос
/ 21 марта 2019

В моем проекте Android есть несколько тестов и настроен CI
Перед развертыванием тестов запускаются с использованием gradle wrapper (4.10.3)
95% тестов - это робоэлектрические тесты

И бывают случаикогда эти тесты не проходят из-за разных причин, но проблема в том, что когда я запускаю их из android studio GUI тесты работают нормально (прохождение).

Например, я использую mockito для mocking и mock-maker-inline, у меня есть этот MockMaker в основном модуле, который используется во всех других модулях, если я запускаю тесты из Android Studio - они проходят, если я запускаюиспользуя gradle обертку - все они терпят неудачу.Это можно решить, добавив MockMaker в модуль, где у меня есть тесты, но все же почему он работает из Android Studio, но не работает с консоли?

Мои варианты запуска теста: Default test running options

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

removed mock maker

Но когда я запускаю с android studio, тесты проходят, и все в порядке.

В чем разница между этими двумя запусками? (Тип запуска по умолчанию для android studio и gradlew testDebug).
И есть ли способ соединить мою пользовательскую задачу тестирования gradle с графическим интерфейсом android studio tests?

1 Ответ

0 голосов
/ 21 марта 2019

Самое большое различие между графическим интерфейсом и запуском из терминала заключается в том, что оболочка Gradle будет выполнять тесты различных модулей одновременно, если вы включите ее в gradle.properties:

org.gradle.parallel=true

Если у вас есть тесты в разных модулях, действующих на один и тот же синглтон или одинаковые макеты, вы можете столкнуться с любым количеством конфликтов.

...