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

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

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

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

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

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

הטמעה

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

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

אינטראקציה

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