Espresso को सेटअप करने के निर्देश

इस गाइड में, SDK Manager का इस्तेमाल करके Espresso को इंस्टॉल करने और Gradle का इस्तेमाल करके इसे बनाने का तरीका बताया गया है. Android Studio का इस्तेमाल करने का सुझाव दिया जाता है.

अपना टेस्ट एनवायरमेंट सेट अप करना

हमारा सुझाव है कि आप टेस्टिंग के लिए इस्तेमाल किए जाने वाले वर्चुअल या फ़िज़िकल डिवाइसों पर, सिस्टम ऐनिमेशन बंद कर दें. इससे आपको टेस्ट के नतीजे सटीक मिलेंगे. अपने डिवाइस पर, सेटिंग > डेवलपर के लिए सेटिंग और टूल में जाकर, इन तीन सेटिंग को बंद करें:

  • विंडो एनिमेशन स्‍केल
  • ट्रांज़िशन एनिमेशन स्‍केल
  • एनिमेटर अवधि स्केल

Espresso डिपेंडेंसी जोड़ना

अपने प्रोजेक्ट में Espresso डिपेंडेंसी जोड़ने के लिए, यह तरीका अपनाएं:

  1. अपने ऐप्लिकेशन की build.gradle फ़ाइल खोलें. आम तौर पर, यह टॉप-लेवल की build.gradle फ़ाइल नहीं होती, बल्कि app/build.gradle होती है.
  2. डिपेंडेंसी के अंदर ये लाइनें जोड़ें:

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 डिपेंडेंसी का पूरा सेट देखें.

इंस्ट्रुमेंटेशन रनर सेट करना

एक ही build.gradle फ़ाइल में, android.defaultConfig में यह लाइन जोड़ें:

Groovy

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

Kotlin

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"

Gradle बिल्ड फ़ाइल का उदाहरण

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')
}

आंकड़े

हर नई रिलीज़ के साथ, हम सही रास्ते पर हैं या नहीं, यह पक्का करने के लिए testrunner, आंकड़ों को इकट्ठा करता है. खास तौर पर, यह हर इनवोकेशन के लिए, टेस्ट किए जा रहे ऐप्लिकेशन के पैकेज के नाम का हैश अपलोड करता है. इससे हमें Espresso का इस्तेमाल करके, यूनीक पैकेज की संख्या और इस्तेमाल की मात्रा, दोनों का पता चलता है.

अगर आपको यह डेटा अपलोड नहीं करना है, तो इंस्ट्रुमेंटेशन कमांड में disableAnalytics आर्ग्युमेंट शामिल करके ऑप्ट आउट किया जा सकता है:

adb shell am instrument -e disableAnalytics true

पहला टेस्ट जोड़ना

Android Studio, डिफ़ॉल्ट रूप से src/androidTest/java/com.example.package/ में टेस्ट बनाता है.

नियमों का इस्तेमाल करके JUnit4 टेस्ट का उदाहरण:

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()));
    }
}

टेस्ट चलाना

Android Studio या कमांड लाइन से टेस्ट चलाए जा सकते हैं.

Android Studio में

Android Studio में टेस्ट कॉन्फ़िगरेशन बनाने के लिए, यह तरीका अपनाएं:

  1. चलाएं > कॉन्फ़िगरेशन में बदलाव करें खोलें.
  2. Android टेस्ट का नया कॉन्फ़िगरेशन जोड़ें.
  3. कोई मॉड्यूल चुनें.
  4. कोई इंस्ट्रुमेंटेशन रनर जोड़ें: androidx.test.runner.AndroidJUnitRunner
  5. अभी बनाए गए कॉन्फ़िगरेशन को चलाएं.

कमांड लाइन से

Gradle की यह कमांड चलाएं:

./gradlew connectedAndroidTest