אוספים של מדדים בצד המכשיר

כשמריצים בדיקות בצד המכשיר (לדוגמה, בדיקות של מכשור, בדיקות UI Automator), יכול להיות שאיסוף נתונים בצד המארח לא יהיה אידיאלי כי קשה לסנכרן את איסוף המדדים עם בדיקה שפועלת במכשיר. לדוגמה, אם מצלמים צילום מסך באופן אסינכרוני, סביר להניח שהוא לא יכלול את המסך הרצוי ולא יהיה שימושי.

כדי לענות על תרחישי השימוש האלה, קיימת גרסה של כלי האיסוף שלנו בצד המכשיר, שאפשר להשתמש בה בכל AndroidJUnitRunner מכשיר מדידה. אפשר להטמיע את BaseMetricListener כדי לדווח באופן אוטומטי על מדדים שנאספים בצורה שתואמת באופן מלא לצינור עיבוד הנתונים לדיווח של Tradefed.

הספרייה הזו מופרדת מ-Tradefed עצמה, ואפשר להשתמש בה בלי Tradefed.

אם אתם משתמשים ב-AndroidJUnitTest runner מ-Tradefed, אתם יכולים לציין את האפשרות הבאה בשורת הפקודה כדי שהכלי לאיסוף נתונים יפעל עם הבדיקות שלכם:

  --device-listeners android.device.collectors.ScreenshotListener
  LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib

הטמעה

כשמטמיעים את המדדים על בסיס מחלקת הבסיס BaseMetricListener, אפשר לבחור מתי רוצים לאסוף את המדדים במהלך מחזור החיים של המכשיר:

  • כשמתחילה בדיקה: onTestRunStart
  • כשמתחיל תרחיש בדיקה: onTestStart
  • כשמקרה בדיקה מסתיים: onTestEnd
  • כשמקרה בדיקה נכשל: onTestFail
  • כשבדיקה מסתיימת: onTestRunEnd

אינטראקציה

האיסוף של המדדים בצד המכשיר מתבצע באופן סינכרוני לביצוע של המדידה עצמה, והמדדים מועברים בחזרה לתוצאות המדידה ומנותחים על ידי Tradefed כדי לדווח עליהם כחלק מהקריאה.