6

Android Birim Test Robolectric: 3.3.2 - Böyle bildirim dosyası: ara manifestoyu tam ayıklama build src ana AndroidManifest.xml'sinde

No such manifest file: build\intermediates\bundles\debug\AndroidManifest.xml 

java.lang.ClassCastException: android.app.Application cannot be cast to gyg.android.reviews.ReviewApplication 
gösteriyor i benim testler hatayı takip ediyorum takip

Gradle bağımlılıkları vardır

compile group: 'org.mockito', name: 'mockito-all', version: '2.0.2-beta' 
testCompile "org.robolectric:robolectric:3.3.2" 
testCompile 'org.mockito:mockito-core:1.10.19' 
testCompile 'junit:junit:4.12' 

i Roboele kullanıyorum

@RunWith(RobolectricTestRunner.class) 
@Config(constants = BuildConfig.class) 
public class ReviewListPresenterTest { 

benim test Class başlıyorum nasıl budur Android Studio 2.3.2 ile ctric 3.3.2 Hızlı yardım çok takdir edilecektir!

+1

Bu aynı hatayı Roboelectric ve Android Studio'nun tam sürümleriyle aynı şekilde alıyorum. Bazı kazmalardan sonra, birleştirilmiş manifestin 'build \ intermediates \ manifests \ full \ debug' veya' build \ intermediates 'manifests \ instant-run \ debug' yerine olduğunu gördüm. Görünüşe göre AS çıkış dizin yapısını değiştirdi ve Robolectric henüz yakalanmadı. –

+0

Robolectric GitHub'da bir Yayın gönderdim: https://github.com/robolectric/robolectric/issues/3110 –

+0

"Dün Android stüdyosunu kapattığımda hatırlıyorum. Bu testler çalışıyordu ama şimdi yeni projemde değil. " Bu testler son kez çalıştırıldığında Android Studio'yu güncellediniz mi? –

cevap

5

Sorun, birden çok modül içeren bir Android Studio projesinde görünmektedir. Komut satırından

  1. çalıştırın Robolectric testleri: Android Studio

    gradlew :app:testDebugUnitTest 
    
  2. çalıştırın Robolectric testler:

    Açık Düzenleme Çalıştır Yapılandırmaları iletişim iki çözümü vardır. Varsayılanlar> Android JUnit altında, Çalışma Dizini sınamakta olduğunuz modülü içeren klasöre ayarlayın. Muhtemelen her bir mevcut çalıştırma konfigürasyonu için bu seçeneği ayarlamanız gerekecektir. Birden fazla modülde testleriniz varsa, her çalışma konfigürasyonu için Çalışma Modülünü uygun modüle ayarlamanız gerekecektir.

+0

Eğer bu projeyi bir başkasına gönderirseniz, bu kişi benim yazılı testimin tümünü başarıyla yürütmek için kendi tarafındaki her test sınıfı için bu konfigürasyonları yapar mı? –

+1

@SalmanNazir .idea proje klasörünü eklerseniz, çalışma yapılandırmalarına sahip bir XML dosyası içerir. Ayrıca Android Studio ayarlarını dışa aktarabilir ve sonuçta oluşan JAR dosyasını projenize gönderebilirsiniz. Diğer kişinin bu ayarları alması gerekecek. –