SORU
24 Temmuz 2013, ÇARŞAMBA


Çalışan basit JUnit Gradle tabanlı bir yapılandırma kullanırken Android Studio (sun one) testleri

Android Studio/IntelliJ Android varolan bir projeyi oluşturmak için kullanıyorum ve JUnit bazı basit birim testlerini eklemek istiyorum. Bu tür testler eklemek için sağ klasörü nedir?

Gradle-tak android ana kaynak kodu için src/main/java Android test src/instrumentTest/java ile bir dizin yapısını tanımlar.

İnstrumentTest içinde JUnit testleri eklemeye benim için işe yaramadı. Ben çalıştırmak gibi bir Android test (bu da-dizin gibi) ama bu değil aradığım - sadece çalıştırmak istediğiniz bir basit JUnit test. Bu Sınıf için JUnit çalıştırmak bir yapılandırma ama o da işe yaramadı - Android olarak işaretli bir dizin kullanıyorum çünkü diyelim ki ben Kaynak yaratmak yerine Test denedim.

Yeni kaynak klasörü oluşturma ve Proje yönetimi olarak bu tür işaretleri varsa, bu bir dahaki sefere sildi alacak IntelliJ proje yeniler, gradle yapılandırma dosyaları oluşturun.

IntelliJ gradle tabanlı bir android projesinde JUnit testleri yapılandırma daha uygun yol nedir? Bunun için kullanılacak?

CEVAP
24 Temmuz 2013, ÇARŞAMBA


Normalde, bunu yapamazsın. Tüm testleri bir cihaz üzerinde çalışması gerekir Android dünyasına hoş geldiniz, (Robolectric hariç).

Ana sebebi aslında çerçeve kaynakları - eğer IDE test yerel olarak çalıştırmak için ikna ederseniz bile, hemen bir "Saplama! sen-ecek almak zorunda değilsiniz. "Özel durum.uygulanan "Neden?" diye merak edebilirsiniz? SDK veren android.jar aslında bir saplama-çünkü - tüm sınıflar ve yöntemler var ama onlar sadece istisna. Bir API sağlamak için var ama hayata geçirilmesi vermek için orada değil.

Anlamlı testler sadece bu yüzden bir çerçeve çok uygulayan harika bir proje Robolectric adında bir kız vardı. İyi sahte bir çerçeve (örneğin, Mockito) ile birleştiğinde, işini yönetilebilir yapar.

Gradle eklentisi: https://github.com/robolectric/robolectric-gradle-plugin

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GOTO Conferences

    GOTO Confere

    3 EKİM 2011
  • thelonelyisland

    thelonelyisl

    23 Aralık 2005
  • waterfairy17

    waterfairy17

    9 Aralık 2007