Как запустить модульные тесты с IDEA+Gradle+Android
Я написал несколько модульных тестов в своих проектах Android с http://robolectric.org/, а некоторые даже не используют Android.
Сначала я попробовал это: https://github.com/robolectric/robolectric-gradle-plugin, следуя этому шаблону. В результате я столкнулся с этой ошибкой в IDEA, о которой я сообщил сам.
Затем я попробовал другую возможность: https://github.com/novoda/gradle-android-test-plugin, который разделяет тесты в другом подмодуле, то есть обычный Java-проект. Я пытался следовать этому другому шаблону. Я открыл этот отчет об ошибке.
Тогда я снова столкнулся с другой ошибкой.
Какие рекомендации вы можете дать мне, это работает?
1 ответ
Наконец мне пришлось обновить IDEA до 14 EAP, и я знаю, что он работает нормально.
gradle-android-test-plugin, кажется, работает лучше, чем плагин robolectric, так как я могу легко запускать тесты JUnit и ScalaTest. Мне пришлось установить с помощью скрипта, неопубликованного com.novoda:gradle-android-test-plugin:0.9.9-SNAPSHOT.
Это адская комбинация версий:
- Инструменты сборки Android
- Gradle
- com.android.tools.build:gradle
- IDEA
- robolectric
- роботизированный плагин
- ....
Любое изменение в одном из них может привести к провалу проекта.
К счастью, с помощью Gradle вы можете исправить версии каждого компонента и выполнить непрерывную интеграцию.