Intereting Posts
Управление сайтом Facebook Facebook BroadcastReceiver vs Service Где я могу найти реализацию ContentProvider DownloadManager WakeLock завершил свою работу еще GetSupportedPictureSize () возвращает значение, которое фактически не поддерживается Nexus4 ActionBarSherlock – пользовательский фон из панели действий с разделителем Как использовать переключатель перехода D-pad между строкой listview и ее подделками (поддержка Google TV) Android выравнивает столбцы равномерно в TableLayout Межстраничное объявление AdMob отображается только один раз Как остановить сеанс в Google mobile analytics v2 для Android без использования EasyTracker Как запустить инструменты командной строки Android? Android – Есть ли способ повернуть тост на 90 градусов? Как рекомендуется использовать Google Map v2 внутри фрагмента? Приложение, использующее профиль bluetooth SPP, не работает после обновления с Android 4.2 до Android 4.3 Как сделать приложение с действительно многоязычными строками?

Параметры Jvm в android при выполнении теста gradlew

У меня есть проект, который использует Robolectric для целей единичного тестирования. Этот проект использует Robolectric 3.0 и ему необходимо добавить -ea и -noverify опции виртуальной машины.

В Android Studio я создал новую конфигурацию JUnit в Run > Edit Configurations... а затем установите VM Options на « -ea -noverify . Таким образом, я успешно выполняю свой модульный тест. Это изображение о моей настройке, смотрите здесь

Однако для непрерывного развертывания мне нужно выполнить единичный тест с командной строкой. Поэтому я использую ./gradlew test для запуска модульного теста. Я также добавляю org.gradle.jvmargs=-ea -noverify в файл gradle.properties . К сожалению, это не сработает. Я могу запустить модульный тест, но у меня есть java.lang.VerifyError и я думаю, что gradle.properties не был загружен.

Итак, мой вопрос: как сделать загрузку gradle.properties или вы знаете какой-либо способ исправить мою проблему с параметрами vm?

Solutions Collecting From Web of "Параметры Jvm в android при выполнении теста gradlew"

Это уже ответ, но это может быть проще:

Добавьте build.gradle файл build.gradle в свои приложения в закрытие Android.

 android { .... testOptions { unitTests.all { jvmArgs '-noverify' } } } 

Я обнаружил, что мы можем добавить этот блок в файл build.gradle для решения этой проблемы

 tasks.whenTaskAdded { theTask -> def taskName = theTask.name.toString() if ("testDevDebug".toString().equals(taskName)) { theTask.jvmArgs('-ea', '-noverify') } } 

DevDebug – мой вариант сборки.

Может быть, это

  ./gradlew -Dorg.gradle.jvmargs="-ea -noverify" test