2017-02-09 60 views
5

Uygulamamın 2 derleme türüm var: hata ayıklama ve bırakma.Android projesinin build.gradle dosyasında "testBuildType" koşulu var mı?

Ben her iki tür inşa ilgili testler yürütmek istiyoruz.

Ama şu anda sadece bir Yapı Tipi test edilir. Varsayılan olarak ayıklama Yapı Tipi, ancak bu yeniden konfigüre edilebilmesi: android { ... testBuildType "serbest bırakma" } Ben yürütmek istiyorum

connectedDebugAndroidTest ve connectedReleaseAndroidTest teker hem tek olmadan gradle dosyasını değiştirme.

"testBuildType" koşullu hale getirmek mümkün müdür? Böylece, görev görevinde (bağlıDebugAndroidTest ve connectedReleaseAndroidTest) yapı değişkenine göre, bu yapı üzerinde testler yürütülür.

+0

Lütfen güncellenmiş yanıtımı kontrol edin. – Shailesh

cevap

2

Emin değilim ama bu benim için işe yaradı. Uygulamada yapı değişkenine (hata ayıklama ve serbest bırakma) göre kod yürütmek istiyorsanız, aşağıdaki kodu kullanarak yapabilirsiniz.

Bu, etkinlik java dosyası içindir. Eğer build.gradle dosyada kontrol etmek istiyorsanız

public void printMessage() 
{ 
    if (BuildConfig.DEBUG) 
    { 
     //App is in debug mode 
    } 
    else 
    { 
     //App is released 
    } 
} 

sonra kod takip ederek yapın.

İlk yolu ayrıntı için

android { 
    testBuildType obtainTestBuildType() 
} 

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

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

    result 
} 

this, this ve this stackoverflow cevabı kontrol ediniz

buildTypes { 
    debug { 
     buildConfigField "String", "SERVER_URL", '"http://test.this-is-so-fake.com"' 
    } 

    release { 
     buildConfigField "String", "SERVER_URL", '"http://prod.this-is-so-fake.com"' 
    } 

    mezzanine.initWith(buildTypes.release) 

    mezzanine { 
     buildConfigField "String", "SERVER_URL", '"http://stage.this-is-so-fake.com"' 
    } 
} 

İkinci yol.

ben size bir çözüm elde umuyoruz.

+0

hanks ama java kodunda değil, gradle dosyasında kontrol etmek istiyorum. Bu bağlantıyı kontrol ettim ama bu sıralı görevler için işe yaramadı. –

+0

Yardımlarınız için teşekkürler. Http://stackoverflow.com/questions/21754713/android-gradle-task-connectedinstrumenttest-for-release-build –

+0

adresinden çözüm buldum. – Shailesh