אוסף מדדים מבוססי-מארח

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

עיצוב אוסף מדדים

מחלקת הבסיס שכל האוספים יורחבו היא BaseDeviceMetricCollector, שעוזר לספק את אותן פונקציות בסיסיות משותפות:

  • סינון
  • השבתה
  • איסוף של מקרי בדיקה לעומת הפעלות בדיקה

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

לדוגמה, אם אוסף הקוד פועל בתאריך testEnded, לפני הביצוע ממשיך לבדיקה הבאה עם testStart שהאוספים יבצעו.

הטמעת אוסף מדדים מבוסס-מארח

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

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

ביצוע איסוף אסינכרוני

בנוסף ל-methods הסינכרוניות, TF מספק מחלקה בסיסית ליישום שמבצע איסוף אסינכרוני תקופתי, ScheduledDeviceMetricCollector, שמספקת שיטת collect להטמעה שתפעל מדי פעם.

אפשר להתאים אישית את התקופה לפי האפשרויות.

הגדרת XML

תג האובייקט יהיה metrics_collector, לדוגמה:

<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
    <option name="categories" value="freq"/>
</metrics_collector>

המלצות

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