צור כתב תוצאות

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

ממשק ליבה

על מנת להגדיר כתב תוצאות חדש ב-Tradefed, מחלקה חייבת ליישם את ממשק ITestInvocationListener המאפשר קבלה וטיפול בשלבים שונים של הפניה:

  • invocationStarted
  • invocationEnded
  • invocationFailed

כתבי תוצאות מטפלים גם בשלבים השונים של כל ריצת בדיקה:

  • testRunStarted
  • testStarted
  • testFailed או testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

בהתחשב בכל האירועים הללו, ישנם שני סוגים עיקריים של כתבי תוצאות, אלה ש:

  • אכפת רק מדיווח על התוצאות המלאות הסופיות.
  • פעל על תוצאות חלקיות.

כתב תוצאות המדווח על תוצאות מלאות סופיות

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

אנו ממליצים לאותם כתבים להרחיב את CollectingTestListener במקום את ממשק הבסיס על מנת להימנע מיישום מחדש של שמירה ואחסון התוצאות עד ל- invocationEnded .

כתב תוצאות המדווח על תוצאות חלקיות

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

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

תצורת XML

תג האובייקט הוא result_reporter . לדוגמה:

<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
    <option name="suppress-passed-tests" value="true"/>
</result_reporter>