כשמריצים בדיקות בצד המכשיר (לדוגמה, מכשירי מדידה, בדיקות של UI Automator), יכול להיות שמאספים בצד המארח לא יהיו אידיאליים כי קשה לסנכרן את איסוף המדדים עם בדיקה שפועלת במכשיר. לדוגמה, צילום מסך שצולם באופן אסינכרוני עלול לא לכלול את המסך הרצוי ולהיות חסר תועלת.
כדי לעמוד בתרחישי השימוש האלה, קיימת גרסה של הקולקטורים שלנו בצד המכשיר
ואפשר להשתמש בו בכל אינסטרומנט של AndroidJUnitRunner
.
אפשר להטמיע את BaseMetricListener
כדי לדווח באופן אוטומטי על מדדים שנאספים באופן שתואם באופן מלא לצינור עיבוד הנתונים לדיווח של Tradefed.
הספרייה הזו מחולקת מ-TrendFed עצמה, ואפשר להשתמש בה ללא TreFed.
אם אתם משתמשים בAndroidJUnitTest
runner מ-Trended, אפשר לציין את האפשרות הבאה בשורת הפקודה
כדי שהקולקטור יריץ את הבדיקות:
--device-listeners android.device.collectors.ScreenshotListener
LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib
הטמעה
כשמטמיעים מעל לכיתה הבסיסית BaseMetricListener
, אפשר לבחור מתי רוצים לאסוף את המדדים במהלך מחזור החיים של הכלי למדידת ביצועים:
- כשמתחילה הפעלת בדיקה:
onTestRunStart
- כשמקרה בדיקה מתחיל:
onTestStart
- בסיום מקרה בדיקה:
onTestEnd
- כשמקרה בדיקה נכשל:
onTestFail
- כשהרצת הבדיקה מסתיימת:
onTestRunEnd
אינטראקציה
איסוף המדדים בצד המכשיר מתבצע באופן סינכרוני עם ביצוע המדידה עצמה, והמדדים מועברים חזרה לתוצאות המדידה ומנותחים על ידי Tradefed כדי לדווח עליהם כחלק מהקריאה.