Bu kılavuzda, SDK Yöneticisi'ni kullanarak Espresso'yu 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.gradle
dosyasını açın. Bu genellikle en üst düzeybuild.gradle
dosyası değil,app/build.gradle
dosyası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 aşağıdaki satırı android.defaultConfig
içinde 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 33 defaultConfig { applicationId "com.my.awesome.app" minSdkVersion 21 targetSdkVersion 33 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(33) defaultConfig { applicationId = "com.my.awesome.app" minSdkVersion(21) targetSdkVersion(33) 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ı, analizler 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, varsayılan olarak src/androidTest/java/com.example.package/
içinde testler 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