Espresso kurulum talimatları

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:

  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ı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:

  1. Run > Edit Configurations'ı (Çalıştır > Yapılandırmaları Düzenle) 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ı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 çalıştırın:

./gradlew connectedAndroidTest