इस गाइड में, SDK Manager का इस्तेमाल करके Espresso को इंस्टॉल करने और Gradle का इस्तेमाल करके इसे बनाने का तरीका बताया गया है. Android Studio का इस्तेमाल करने का सुझाव दिया जाता है.
अपना टेस्ट एनवायरमेंट सेट अप करना
हमारा सुझाव है कि आप टेस्टिंग के लिए इस्तेमाल किए जाने वाले वर्चुअल या फ़िज़िकल डिवाइसों पर, सिस्टम ऐनिमेशन बंद कर दें. इससे, टेस्ट के नतीजे में गड़बड़ी होने की संभावना कम हो जाती है. अपने डिवाइस पर, सेटिंग > डेवलपर के लिए सेटिंग और टूल में जाकर, ये तीन सेटिंग बंद करें:
- विंडो एनिमेशन स्केल
- ट्रांज़िशन एनिमेशन स्केल
- एनिमेटर अवधि स्केल
Espresso डिपेंडेंसी जोड़ना
अपने प्रोजेक्ट में Espresso डिपेंडेंसी जोड़ने के लिए, यह तरीका अपनाएं:
- अपने ऐप्लिकेशन की
build.gradleफ़ाइल खोलें. आम तौर पर, यह टॉप-लेवल कीbuild.gradleफ़ाइल नहीं होती, बल्किapp/build.gradleहोती है. - डिपेंडेंसी में ये लाइनें जोड़ें:
शानदार
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 में यह लाइन जोड़ें:
शानदार
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
Kotlin
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
Gradle बिल्ड फ़ाइल का उदाहरण
शानदार
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 में टेस्ट कॉन्फ़िगरेशन बनाने के लिए, यह तरीका अपनाएं:
- चलाएं > कॉन्फ़िगरेशन में बदलाव करें खोलें.
- Android टेस्ट का नया कॉन्फ़िगरेशन जोड़ें.
- कोई मॉड्यूल चुनें.
- कोई इंस्ट्रुमेंटेशन रनर जोड़ें:
androidx.test.runner.AndroidJUnitRunner - अभी बनाए गए कॉन्फ़िगरेशन को चलाएं.
कमांड लाइन से
नीचे दिए गए Gradle कमांड को लागू करें:
./gradlew connectedAndroidTest