2014-02-13 5 views
7

Есть ли способ запустить тесты с типом выпуска Release или любым другим вариантом пользовательской сборки?Задача Android Gradle: connectedInstrumentTest для выпуска сборки?

поведение по умолчанию задачи connectedInstrumentTest это запустить тесты только против варианта отладки сборки

Любые идеи?

ответ

10

AFAIK connectedInstrumentTest работает против типа сборки, указанного в атрибуте testBuildType. Вы могли бы попытаться сделать эту динамику чтения его из аргументов командной строки:

android { 
    testBuildType obtainTestBuildType() 
} 

def obtainTestBuildType() { 
    def result = "debug"; 

    if (project.hasProperty("testBuildType")) { 
     result = project.getProperties().get("testBuildType") 
    } 

    result 
} 

И затем вызвать его с

./gradlew connectedInstrumentTest -PtestBuildType=release

+0

Спасибо за это. Это выглядит разумно, но переменная командной строки выглядит так, как будто она опущена. fyi: Я использую buildToolsVersion "19.0.1" gradlew dist (gradle-1.10) – gemini

+0

Вы правы. Похоже, я использовал неправильное имя метода, попробуйте его изменить (см. Обновленный ответ). – rciovati

+1

Великий просто понял, что. Другая проблема возникла в том, что ... когда я пытаюсь запустить ./gradlew connectedInstrumentTest -PtestBuildType = release Невозможно найти информацию о приборе для: ComponentInfo {com.example.app.tests/com.example.app.tests.SpoonInstrumentationTestRunner } SpoonInstrumentationTestRunner.java живет в каталоге инструментов по умолчанию, который не относится к определенному типу сборки Любые идеи будут высоко оценены? – gemini

Смежные вопросы