Bu kılavuzda, Espresso'yu SDK Yöneticisi'ni kullanarak yükleme ve Gradle kullanarak oluşturma konuları ele alınmaktadır. Android Studio önerilir.
Test ortamınızı ayarlama
Test için kullanılan sanal veya fiziksel cihazlarda sistem animasyonlarını kapatmanızı önemle tavsiye ederiz. Bu sayede testlerin daha güvenilir olmasını sağlayabilirsiniz. Cihazınızda Ayarlar > Geliştirici seçenekleri bölümünde aşağıdaki 3 ayarı devre dışı bırakın:
- Pencere animasyonu ölçeği
- Geçiş animasyonu ölçeği
- Animatör süre ölçeği
Espresso bağımlılıklarını ekleme
Projenize Espresso bağımlılıkları eklemek için aşağıdaki adımları tamamlayın:
- Uygulamanızın
build.gradledosyasını açın. Bu genellikle en üst düzeybuild.gradledosyası değil,app/build.gradledosyasıdır. - Bağımlılıkların içine aşağıdaki satırları ekleyin:
Groovy
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1' androidTestImplementation 'androidx.test:runner:1.6.1' androidTestImplementation 'androidx.test:rules:1.6.1'
Kotlin
androidTestImplementation('androidx.test.espresso:espresso-core:3.6.1') androidTestImplementation('androidx.test:runner:1.6.1') androidTestImplementation('androidx.test:rules:1.6.1')
Gradle bağımlılıklarının tam listesini görüntüleyin.
Enstrümantasyon çalıştırıcısını ayarlama
Aynı build.gradle dosyasına android.defaultConfig içinde aşağıdaki satırı ekleyin:
Groovy
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
Kotlin
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
Örnek Gradle derleme dosyası
Groovy
plugins { id 'com.android.application' } android { compileSdkVersion 36 defaultConfig { applicationId "com.my.awesome.app" minSdkVersion 23 targetSdkVersion 36 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } } dependencies { androidTestImplementation 'androidx.test:runner:1.6.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1' }
Kotlin
plugins { id("com.android.application") } android { compileSdkVersion(36) defaultConfig { applicationId = "com.my.awesome.app" minSdkVersion(23) targetSdkVersion(36) versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } } dependencies { androidTestImplementation('androidx.test:runner:1.6.1') androidTestImplementation('androidx.test.espresso:espresso-core:3.6.1') }
Analizler
Her yeni sürümde doğru yolda olduğumuzdan emin olmak için test çalıştırıcı, analiz verileri toplar. Daha spesifik olarak, her çağırma için test edilen uygulamanın paket adının karma değerini yükler. Bu sayede, Espresso'yu kullanan benzersiz paketlerin sayısını ve kullanım hacmini ölçebiliriz.
Bu verileri yüklemek istemiyorsanız enstrümantasyon komutunuza disableAnalytics bağımsız değişkenini ekleyerek kapsam dışında kalabilirsiniz:
adb shell am instrument -e disableAnalytics true
İlk testi ekleme
Android Studio, testleri varsayılan olarak src/androidTest/java/com.example.package/ içinde oluşturur.
Kuralların kullanıldığı örnek JUnit4 testi:
Kotlin
@RunWith(AndroidJUnit4::class) @LargeTest class HelloWorldEspressoTest { @get:Rule val activityRule = ActivityScenarioRule(MainActivity::class.java) @Test fun listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())) } }
Java
@RunWith(AndroidJUnit4.class) @LargeTest public class HelloWorldEspressoTest { @Rule public ActivityScenarioRule<MainActivity> activityRule = new ActivityScenarioRule<>(MainActivity.class); @Test public void listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())); } }
Testler yapın
Testlerinizi Android Studio'da veya komut satırından çalıştırabilirsiniz.
Android Studio'da
Android Studio'da test yapılandırması oluşturmak için aşağıdaki adımları tamamlayın:
- Run > Edit Configurations'ı (Çalıştır > Yapılandırmaları Düzenle) açın.
- Yeni bir Android Testleri yapılandırması ekleyin.
- Bir modül seçin.
- Belirli bir enstrümantasyon çalıştırıcısı ekleyin:
androidx.test.runner.AndroidJUnitRunner - Yeni oluşturulan yapılandırmayı çalıştırın.
Komut satırından
Aşağıdaki Gradle komutunu çalıştırın:
./gradlew connectedAndroidTest