يتناول هذا الدليل تثبيت Espresso باستخدام "مدير حِزم تطوير البرامج (SDK)" وإنشاءه باستخدام Gradle. ننصحك باستخدام "استوديو Android".
إعداد بيئة الاختبار
لتجنُّب حدوث مشاكل، ننصحك بشدة بإيقاف الرسومات المتحرّكة للنظام على الأجهزة الافتراضية أو الأجهزة الفعلية المستخدَمة للاختبار. على جهازك، ضمن الإعدادات > خيارات المطوّرين، أوقِف الخيارات الثلاثة التالية:
- حجم الرسوم المتحركة للنافذة
- حجم الرسوم المتحركة للنقل
- طول مدة الرسوم المتحركة
إضافة تبعيات 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 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"
لإنشاء إعدادات اختبار في Android Studio، أكمِل الخطوات التالية:
- افتح التشغيل > تعديل الإعدادات.
- أضِف إعدادات جديدة لاختبارات Android.
- اختَر وحدة.
- أضِف أداة تنفيذ أدوات قياس الأداء المحدّدة:
androidx.test.runner.AndroidJUnitRunner
- شغِّل الإعداد الذي تم إنشاؤه حديثًا.
من سطر الأوامر
نفِّذ الأمر التالي في Gradle:
./gradlew connectedAndroidTest