این راهنما نصب Espresso با استفاده از SDK Manager و ساخت آن با استفاده از Gradle را پوشش میدهد. استفاده از اندروید استودیو توصیه میشود.
محیط آزمایش خود را تنظیم کنید
برای جلوگیری از کندی، اکیداً توصیه میکنیم انیمیشنهای سیستم را در دستگاههای مجازی یا فیزیکی مورد استفاده برای آزمایش خاموش کنید. در دستگاه خود، در قسمت تنظیمات > گزینههای توسعهدهندگان ، 3 تنظیم زیر را غیرفعال کنید:
- مقیاس انیمیشن پنجره
- مقیاس انیمیشن انتقال
- مقیاس مدت زمان انیماتور
وابستگیهای اسپرسو را اضافه کنید
برای افزودن وابستگیهای 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'
کاتلین
androidTestImplementation('androidx.test.espresso:espresso-core:3.6.1') androidTestImplementation('androidx.test:runner:1.6.1') androidTestImplementation('androidx.test:rules:1.6.1')
مجموعه کامل وابستگیهای Gradle را مشاهده کنید .
دونده ابزار دقیق را تنظیم کنید
خط زیر را در android.defaultConfig به همان فایل build.gradle اضافه کنید:
گرووی
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
کاتلین
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
نمونه فایل ساخت Gradle
گرووی
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' }
کاتلین
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 در دستور instrumentation خود، از این کار خودداری کنید:
adb shell am instrument -e disableAnalytics true
اضافه کردن اولین آزمون
اندروید استودیو به طور پیشفرض تستها را در مسیر src/androidTest/java/com.example.package/ ایجاد میکند.
مثالی از تست JUnit4 با استفاده از قوانین:
کاتلین
@RunWith(AndroidJUnit4::class) @LargeTest class HelloWorldEspressoTest { @get:Rule val activityRule = ActivityScenarioRule(MainActivity::class.java) @Test fun listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())) } }
جاوا
@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())); } }
اجرای تستها
شما میتوانید تستهای خود را در اندروید استودیو یا از طریق خط فرمان اجرا کنید.
در اندروید استودیو
برای ایجاد یک پیکربندی آزمایشی در اندروید استودیو، مراحل زیر را انجام دهید:
- اجرا > ویرایش پیکربندیها را باز کنید.
- یک پیکربندی جدید برای تستهای اندروید اضافه کنید.
- یک ماژول انتخاب کنید.
- یک اجراکنندهی instrumentation خاص اضافه کنید:
androidx.test.runner.AndroidJUnitRunner - پیکربندی تازه ایجاد شده را اجرا کنید.
از خط فرمان
دستور Gradle زیر را اجرا کنید:
./gradlew connectedAndroidTest