عند إجراء اختبارات على الجهاز (مثل اختبارات الأدوات أو اختبارات UI Automator)، قد لا تكون أدوات جمع البيانات على المضيف خيارًا مثاليًا لأنّه يصعب مزامنة عملية جمع المقاييس مع اختبار يتم إجراؤه على جهاز. على سبيل المثال، من المحتمل أن تفوتك الشاشة المطلوبة عند أخذ لقطة شاشة بشكل غير متزامن، وبالتالي لن تكون مفيدة.
لتلبية حالات الاستخدام هذه، يتوفّر إصدار من أدوات جمع البيانات على الجهاز ويمكن استخدامه في أي عملية قياس AndroidJUnitRunner
.
يمكن تنفيذ BaseMetricListener
للإبلاغ تلقائيًا عن المقاييس التي يتم جمعها
بطريقة متوافقة تمامًا مع مسار إعداد التقارير في Tradefed.
يتم فصل هذه المكتبة عن Tradefed نفسها ويمكن استخدامها بدون Tradefed.
إذا كنت تستخدم AndroidJUnitTest
برنامج التشغيل من Tradefed، يمكنك تحديد خيار سطر الأوامر التالي
لتشغيل أداة جمع البيانات مع اختباراتك:
--device-listeners android.device.collectors.ScreenshotListener
LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib
التنفيذ
عند التنفيذ فوق الفئة الأساسية BaseMetricListener
، يمكنك اختيار الوقت الذي تريد فيه جمع المقاييس خلال دورة حياة القياس:
- عند بدء تشغيل اختبار:
onTestRunStart
- عند بدء حالة اختبار:
onTestStart
- عند انتهاء حالة اختبار:
onTestEnd
- عندما يتعذّر تنفيذ حالة اختبار:
onTestFail
- عند انتهاء تشغيل الاختبار:
onTestRunEnd
التفاعل
يتم جمع المقاييس على الجهاز بشكل متزامن مع تنفيذ أداة القياس نفسها، ويتم تمرير المقاييس مرة أخرى إلى نتائج أداة القياس، ويحلّلها Tradefed ليتم تسجيلها كجزء من عملية الاستدعاء.