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