Espresso kurulum talimatları

Bu kılavuzda, SDK Manager'ı kullanarak Espresso'yu yükleme ve Gradle ile geliştirme konuları ele alınmaktadır. Android Studio önerilir.

Test ortamınızı ayarlama

Titremeyi önlemek amacıyla, test için kullanılan sanal veya fiziksel cihazlarda sistem animasyonlarını devre dışı bırakmanızı önemle tavsiye ederiz. Cihazınızda, Ayarlar > Geliştirici seçenekleri altında 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 üst düzey build.gradle dosyası değil, app/build.gradle olur.
  2. Bağımlılıkların içine aşağıdaki satırları ekleyin:

Eski

androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
androidTestImplementation 'androidx.test:runner:1.4.0'
androidTestImplementation 'androidx.test:rules:1.4.0'

Kotlin

androidTestImplementation('androidx.test.espresso:espresso-core:3.4.0')
androidTestImplementation('androidx.test:runner:1.4.0')
androidTestImplementation('androidx.test:rules:1.4.0')

Gradle bağımlılıklarının tam grubunu görüntüleyin.

Enstrümantasyon koşucusunu ayarlama

Aynı build.gradle dosyasına android.defaultConfig içinde bulunan aşağıdaki satırı ekleyin:

Eski

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

Kotlin

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"

Örnek Gradle derleme dosyası

Eski

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.4.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}

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.4.0')
    androidTestImplementation('androidx.test.espresso:espresso-core:3.4.0')
}

Analizler

Test aracı, 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 bir karmasını yükler. Bu sayede Espresso'yu kullanarak hem benzersiz paket sayısını hem de kullanım hacmini ölçebiliriz.

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

adb shell am instrument -e disableAnalytics true

İlk testi ekleyin

Android Studio, src/androidTest/java/com.example.package/ içinde varsayılan olarak test 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()));
    }
}

Testler yapın

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 Tests yapılandırması ekleyin.
  3. Modül seçin.
  4. Belirli bir enstrümantasyon çalıştırıcısı 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 yürütün:

./gradlew connectedAndroidTest