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

आंकड़े

टेस्ट रनर, आंकड़ों को इकट्ठा करता है, ताकि यह पक्का किया जा सके कि हम हर नई रिलीज़ के साथ सही दिशा में आगे बढ़ रहे हैं. खास तौर पर, यह हर बार इस्तेमाल किए जाने पर, टेस्ट किए जा रहे ऐप्लिकेशन के पैकेज के नाम का हैश अपलोड करता है. इससे, 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