इस गाइड में, एसडीके मैनेजर का इस्तेमाल करके Espresso को इंस्टॉल करने और Gradle का इस्तेमाल करके इसे बनाने का तरीका बताया गया है. हमारा सुझाव है कि आप Android Studio का इस्तेमाल करें.
अपना टेस्ट एनवायरमेंट सेट अप करना
हमारा सुझाव है कि आप टेस्टिंग के लिए इस्तेमाल किए जा रहे वर्चुअल या फ़िज़िकल डिवाइसों पर, सिस्टम ऐनिमेशन बंद कर दें. इससे, टेस्ट के दौरान ऐप्लिकेशन के क्रैश होने या फ़्रीज़ होने की समस्या से बचा जा सकता है. अपने डिवाइस पर, सेटिंग > डेवलपर के लिए सेटिंग और टूल में जाकर, ये तीन सेटिंग बंद करें:
- विंडो एनिमेशन स्केल
- ट्रांज़िशन एनिमेशन स्केल
- एनिमेटर अवधि स्केल
Espresso डिपेंडेंसी जोड़ना
अपने प्रोजेक्ट में Espresso डिपेंडेंसी जोड़ने के लिए, यह तरीका अपनाएं:
- अपने ऐप्लिकेशन की
build.gradleफ़ाइल खोलें. आम तौर पर, यह टॉप-लेवल कीbuild.gradleफ़ाइल नहीं होती, बल्किapp/build.gradleहोती है. - dependencies में ये लाइनें जोड़ें:
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 36 defaultConfig { applicationId "com.my.awesome.app" minSdkVersion 23 targetSdkVersion 36 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(36) defaultConfig { applicationId = "com.my.awesome.app" minSdkVersion(23) targetSdkVersion(36) 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') }
Analytics
यह पक्का करने के लिए कि हम हर नई रिलीज़ के साथ सही दिशा में आगे बढ़ रहे हैं, टेस्ट रनर आंकड़े इकट्ठा करता है. खास तौर पर, यह हर बार कॉल किए जाने पर, टेस्ट किए जा रहे ऐप्लिकेशन के पैकेज के नाम का हैश अपलोड करता है. इससे हमें 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 में टेस्ट कॉन्फ़िगरेशन बनाने के लिए, यह तरीका अपनाएं:
- Run > Edit Configurations खोलें.
- Android टेस्ट का नया कॉन्फ़िगरेशन जोड़ें.
- कोई मॉड्यूल चुनें.
- कोई खास इंस्ट्रुमेंटेशन रनर जोड़ें:
androidx.test.runner.AndroidJUnitRunner - नया कॉन्फ़िगरेशन चलाएं.
कमांड लाइन के ज़रिए
यह Gradle कमांड चलाएं:
./gradlew connectedAndroidTest