בדף הזה נסביר איך להטמיע דיווח חדש על תוצאות ואיך להגדיר אותו לבדיקה.
ממשק הליבה
כדי להגדיר דיווח על תוצאות חדש ב-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>