Espresso kurulum talimatları

Bu kılavuzda, Espresso'yu SDK Yöneticisi'ni kullanarak yükleme ve Gradle'i kullanarak derleme işlemleri ele alınmaktadır. Android Studio önerilir.

Test ortamınızı ayarlama

Kararsızlığı önlemek için test için kullanılan sanal veya fiziksel cihazlarda sistem animasyonları kapatmanızı önemle tavsiye ederiz. 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ıları ekleme

Projenize Espresso bağımlılıkları eklemek için aşağıdaki adımları tamamlayın:

  1. Uygulamanızın build.gradle dosyasını açın. Bu genellikle en üst düzey build.gradle dosyası değil, app/build.gradle dosyasıdır.
  2. Bağımlılıklar bölümüne aşağıdaki satırları ekleyin:

Eski

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 tamamını görüntüleyin.

Enstrümantasyon çalıştırıcısını ayarlama

Aynı build.gradle dosyasına android.defaultConfig bölümünde 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 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

Test çalıştırıcı, her yeni sürümde doğru yolda olduğumuzdan emin olmak için analizler toplar. Daha açık belirtmek gerekirse, her çağrı için test edilen uygulamanın paket adının karmasını yükler. Bu sayede, Espresso'yu kullanarak hem benzersiz paketlerin sayısını hem de kullanım hacmini ölçebiliriz.

Bu verileri yüklemek istemiyorsanız disableAnalytics bağımsız değişkenini enstrümantasyon komutunuza ekleyerek kapsam dışında kalmayı seçebilirsiniz:

adb shell am instrument -e disableAnalytics true

İlk testi ekleyin

Android Studio, varsayılan olarak src/androidTest/java/com.example.package/ içinde testler oluşturur.

Kuralları kullanan ö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()));
    }
}

Test çalıştırma

Testlerinizi Android Studio'da veya komut satırından çalıştırabilirsiniz.

Android Studio'da

Android Studio'da bir test yapılandırması oluşturmak için aşağıdaki adımları tamamlayın:

  1. Çalıştır > Yapılandırmaları Düzenle'yi açın.
  2. Yeni bir Android Testleri yapılandırması ekleyin.
  3. Bir modül seçin.
  4. Belirli bir enstrümantasyon çalıştırıcı ekleyin: androidx.test.runner.AndroidJUnitRunner
  5. 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