BasePostProcessor

public abstract class BasePostProcessor
extends Object implements IPostProcessor

java.lang.Object
   ↳ com.android.tradefed.postprocessor.BasePostProcessor


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

סיכום

‫constructors ציבוריים

BasePostProcessor()

‫methods ציבוריים

final ITestInvocationListener init(ITestInvocationListener listener)

שלב ההפעלה של מעבד המידע.

final void invocationEnded(long elapsedTime)

דיווח על סיום ההפעלה, בין אם בהצלחה ובין אם בגלל שגיאה כלשהי.

final void invocationFailed(FailureDescription failure)

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

final void invocationFailed(Throwable cause)

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

void invocationSkipped(SkipReason reason)

דיווח על הפעלה שנדלגה

final void invocationStarted(IInvocationContext context)

‫Invocation Listeners להעברה

final boolean isDisabled()

הפונקציה מחזירה את הערך True אם האובייקט כולו מושבת (דילוג על ההגדרה ועל הניקוי).

final void logAssociation(String dataName, LogFile logFile)

במקרים מסוימים, צריך לשייך את היומן באופן חזק לתרחישי בדיקה, אבל אי אפשר לעשות את זה באמצעות הקריאה החוזרת הישירה testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile).

מעדכן את השיוך של היומן לבדיקה.

processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)

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

abstract processRunMetricsAndLogs( rawMetrics, runLogs)

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

processTestMetricsAndLogs(TestDescription testDescription, testMetrics, testLogs)

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

final void setLogSaver(ILogSaver logSaver)

מגדירים את ILogSaver כדי לאפשר למטמיע לשמור קבצים.

void setUp()

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

final void testAssumptionFailure(TestDescription test, String trace)

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

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

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

final void testEnded(TestDescription test, long endTime, testMetrics)

חלופה ל-ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) שבה אפשר לציין את שעת הסיום ישירות.

final void testEnded(TestDescription test, testMetrics)

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

final void testFailed(TestDescription test, FailureDescription failure)

הודעה על כשל במקרה בדיקה ספציפי.

final void testFailed(TestDescription test, String trace)

הודעה על כשל במקרה בדיקה ספציפי.

final void testIgnored(TestDescription test)

הפונקציה נקראת כשהבדיקה לא תופעל, בדרך כלל כי שיטת הבדיקה מסומנת ב-org.junit.Ignore.

final void testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)

משתמשים בשיטה הזו כדי לרשום קובץ ביומן מההטמעה של PostProcessor.

final void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

הפונקציה מופעלת כשיומן הבדיקה נשמר.

final void testModuleEnded()

הפונקציה מדווחת על סיום הרצה של מודול.

final void testModuleStarted(IInvocationContext moduleContext)

הפונקציה מחזירה את תחילת ההרצה של מודול.

final void testRunEnded(long elapsedTime, runMetrics)

דוחות על סיום הרצת הבדיקה.

final void testRunFailed(FailureDescription failure)

הפעלת הבדיקה של הדוחות לא הושלמה בגלל כשל שמתואר ב-FailureDescription.

final void testRunFailed(String errorMessage)

הפעלת הבדיקה של הדוחות נכשלה בגלל שגיאה חמורה.

final void testRunStarted(String runName, int testCount, int attemptNumber)

הפונקציה מחזירה את תחילת ההרצה של הבדיקה.

final void testRunStarted(String runName, int testCount)

בדיקת התקשרות חזרה

final void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

הפונקציה מחזירה את תחילת ההרצה של הבדיקה.

final void testRunStopped(long elapsedTime)

הפעלת הבדיקה של הדוחות הופסקה לפני שהסתיימה בגלל בקשה של משתמש.

final void testSkipped(TestDescription test, SkipReason reason)

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

final void testStarted(TestDescription test, long startTime)

חלופה ל-testStarted(com.android.tradefed.result.TestDescription) שבה מציינים גם מתי הבדיקה התחילה, בשילוב עם ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) למדידה מדויקת.

final void testStarted(TestDescription test)

מקרי בדיקה של התקשרות חזרה

שיטות מוגנות

void cleanUp()
MetricMeasurement.DataType getMetricType()

אפשר להגדיר שינוי של סוג המדד לפי הצורך.

String getRunName()

Constructors ציבוריים

BasePostProcessor

public BasePostProcessor ()

‫methods ציבוריים

init

public final ITestInvocationListener init (ITestInvocationListener listener)

שלב ההפעלה של מעבד המידע. הפונקציה הזו מופעלת לפני כל אחת מהפונקציות של הבדיקות.

פרמטרים
listener ITestInvocationListener

החזרות
ITestInvocationListener

invocationEnded

public final void invocationEnded (long elapsedTime)

דיווח על סיום ההפעלה, בין אם בהצלחה ובין אם בגלל שגיאה כלשהי.

הפונקציה הזו תופעל אוטומטית על ידי מסגרת TradeFederation.

פרמטרים
elapsedTime long: הזמן שחלף מאז ההפעלה במילישניות

invocationFailed

public final void invocationFailed (FailureDescription failure)

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

הפונקציה הזו תופעל אוטומטית על ידי מסגרת TradeFederation.

פרמטרים
failure FailureDescription: FailureDescription שמתארת את הסיבה לכשל

invocationFailed

public final void invocationFailed (Throwable cause)

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

הפונקציה הזו תופעל אוטומטית על ידי מסגרת TradeFederation.

פרמטרים
cause Throwable: סיבת הכשל של Throwable

invocationSkipped

public void invocationSkipped (SkipReason reason)

דיווח על הפעלה שנדלגה

פרמטרים
reason SkipReason

invocationStarted

public final void invocationStarted (IInvocationContext context)

‫Invocation Listeners להעברה

פרמטרים
context IInvocationContext: מידע על הקריאה

isDisabled

public final boolean isDisabled ()

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

החזרות
boolean

logAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

במקרים מסוימים, צריך לשייך את היומן באופן חזק לתרחישי בדיקה, אבל אי אפשר לעשות את זה באמצעות הקריאה החוזרת הישירה testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile). לכן, פונקציית הקריאה החוזרת הזו מאפשרת לספק שיוך חזק באופן מפורש.

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

פרמטרים
dataName String: שם הנתונים

logFile LogFile: LogFile שנרשם קודם וצריך להיות משויך לתרחיש הבדיקה.

processAllTestMetricsAndLogs

public  processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, 
                 allTestLogs)

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

פרמטרים
allTestMetrics ListMultimap: HashMultimap שבו מאוחסנים המדדים מכל בדיקה, מקובצים לפי שמות המדדים.

allTestLogs : מפה שמאחסנת את המפה של קובצי היומן של כל בדיקה, עם שמות הנתונים שלהם כמפתחות, באמצעות TestDescription של כל בדיקה כמפתחות.

החזרות
קבוצת המדדים החדשים שנוצרו מכל מדדי הבדיקה.

processRunMetricsAndLogs

public abstract  processRunMetricsAndLogs ( rawMetrics, 
                 runLogs)

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

פרמטרים
rawMetrics : קבוצת המדדים הגולמיים שזמינים להרצה.

runLogs : קבוצת קובצי היומן של הרצת הבדיקה.

החזרות
קבוצת המדדים החדשה שנוצרה מהמדדים של הריצה.

processTestMetricsAndLogs

public  processTestMetricsAndLogs (TestDescription testDescription, 
                 testMetrics, 
                 testLogs)

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

פרמטרים
testDescription TestDescription: אובייקט TestDescription שמתאר את הבדיקה.

testMetrics : קבוצת המדדים מהבדיקה.

testLogs : קבוצת הקבצים שנרשמו במהלך הבדיקה.

החזרות
קבוצת המדדים החדשה שנוצרה ממדדי הבדיקה.

setLogSaver

public final void setLogSaver (ILogSaver logSaver)

מגדירים את ILogSaver כדי לאפשר למטמיע לשמור קבצים.

פרמטרים
logSaver ILogSaver: ILogSaver

setUp

public void setUp ()

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

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                String trace)

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

פרמטרים
test TestDescription: מזהה את הבדיקה

trace String: דוח קריסות של הכשל

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

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

פרמטרים
test TestDescription: מזהה את הבדיקה

failure FailureDescription: FailureDescription תיאור הכשל וההקשר שלו.

testEnded

public final void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

חלופה ל-ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) שבה אפשר לציין את שעת הסיום ישירות. אפשר לשלב עם testStarted(com.android.tradefed.result.TestDescription, long) כדי לקבל מדידה מדויקת.

פרמטרים
test TestDescription: מזהה את הבדיקה

endTime long: השעה שבה הבדיקה הסתיימה, נמדדת באמצעות System.currentTimeMillis()

testMetrics : ERROR(/Map) של המדדים שמוצגים

testEnded

public final void testEnded (TestDescription test, 
                 testMetrics)

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

אם לא בוצעה קריאה לפונקציה testFailed(TestDescription, FailureDescription), הבדיקה הזו עברה. הפונקציה מחזירה גם מדדים של מפתח/ערך שאולי הופקו במהלך ההרצה של תרחיש הבדיקה.

פרמטרים
test TestDescription: מזהה את הבדיקה

testMetrics : ERROR(/Map) של המדדים שמוצגים

testFailed

public final void testFailed (TestDescription test, 
                FailureDescription failure)

הודעה על כשל במקרה בדיקה ספציפי.

הפונקציה הזו תופעל בין testStarted לבין testEnded.

פרמטרים
test TestDescription: מזהה את הבדיקה

failure FailureDescription: FailureDescription תיאור הכשל וההקשר שלו.

testFailed

public final void testFailed (TestDescription test, 
                String trace)

הודעה על כשל במקרה בדיקה ספציפי.

הפונקציה הזו תופעל בין testStarted לבין testEnded.

פרמטרים
test TestDescription: מזהה את הבדיקה

trace String: דוח קריסות של הכשל

testIgnored

public final void testIgnored (TestDescription test)

הפונקציה נקראת כשהבדיקה לא תופעל, בדרך כלל כי שיטת הבדיקה מסומנת ב-org.junit.Ignore.

פרמטרים
test TestDescription: מזהה את הבדיקה

testLog

public final void testLog (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

משתמשים בשיטה הזו כדי לרשום קובץ ביומן מההטמעה של PostProcessor.

פרמטרים
dataName String: String שם תיאורי של הנתונים, למשל device_logcat. הערה יכול להיות ש-dataName לא יהיה ייחודי לכל הפעלה. כלומר, המטמיעים צריכים להיות מסוגלים לטפל בכמה קריאות עם אותו dataName

dataType LogDataType: LogDataType של הנתונים

dataStream InputStreamSource: InputStreamSource הנתונים. המטמיעים צריכים לקרוא ל-createInputStream כדי להתחיל לקרוא את הנתונים, ולוודא שהם סוגרים את InputStream שמתקבל בסיום. המתקשרים צריכים לוודא שמקור הנתונים נשאר נוכח ונגיש עד שהשיטה testLog מסתיימת.

testLogSaved

public final void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

הפונקציה מופעלת כשיומן הבדיקה נשמר.

צריך להשתמש בה במקום ITestInvocationListener.testLog(String, LogDataType, InputStreamSource).

פרמטרים
dataName String: String שם תיאורי של הנתונים, למשל device_logcat. הערה יכול להיות ש-dataName לא יהיה ייחודי לכל הפעלה. כלומר, המטמיעים צריכים להיות מסוגלים לטפל בכמה קריאות עם אותו dataName

dataType LogDataType: LogDataType של הנתונים

dataStream InputStreamSource: InputStreamSource הנתונים. מטמיעים צריכים לקרוא ל-createInputStream כדי להתחיל לקרוא את הנתונים, ולוודא שסוגרים את InputStream שמתקבל בסיום.

logFile LogFile: LogFile שמכיל את המטא-נתונים של הקובץ שנשמר.

testModuleEnded

public final void testModuleEnded ()

הפונקציה מדווחת על סיום הרצה של מודול.

testModuleStarted

public final void testModuleStarted (IInvocationContext moduleContext)

הפונקציה מחזירה את תחילת ההרצה של מודול. הקריאה החוזרת הזו משויכת ל-testModuleEnded() והיא אופציונלית ברצף. הוא נמצא בשימוש רק במהלך הרצה שמשתמשת במודולים: רצים מבוססי-חבילה.

פרמטרים
moduleContext IInvocationContext: IInvocationContext של המודול.

testRunEnded

public final void testRunEnded (long elapsedTime, 
                 runMetrics)

דוחות על סיום הרצת הבדיקה.

פרמטרים
elapsedTime long: הזמן שחלף שדווח על ידי המכשיר, באלפיות השנייה

runMetrics : צמדי מפתח/ערך שמדווחים בסוף הרצת בדיקה

testRunFailed

public final void testRunFailed (FailureDescription failure)

הפעלת הבדיקה של הדוחות לא הושלמה בגלל כשל שמתואר ב-FailureDescription.

פרמטרים
failure FailureDescription: FailureDescription תיאור הכשל וההקשר שלו.

testRunFailed

public final void testRunFailed (String errorMessage)

הפעלת הבדיקה של הדוחות נכשלה בגלל שגיאה חמורה.

פרמטרים
errorMessage String: String, תיאור הסיבה לכישלון ההרצה.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

הפונקציה מחזירה את תחילת ההרצה של הבדיקה.

פרמטרים
runName String: השם של הרצת הבדיקה

testCount int: המספר הכולל של הבדיקות בהרצת הבדיקה

attemptNumber int: מספר ההזמנה, שמזהה את הניסיונות השונים של אותו runName שמופעל כמה פעמים. הערך של attemptNumber מתחיל מ-0 וצריך לעלות בכל פעם שמתבצעת הפעלה חדשה. לדוגמה: אם מתבצע ניסיון חוזר של בדיקה 3 פעמים, צריכות להיות 4 הפעלות בסך הכול באותו runName, והערך של attemptNumber יהיה מ-0 עד 3.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

בדיקת התקשרות חזרה

פרמטרים
runName String: השם של הרצת הבדיקה

testCount int: המספר הכולל של הבדיקות בהרצת הבדיקה

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

הפונקציה מחזירה את תחילת ההרצה של הבדיקה.

פרמטרים
runName String: השם של הרצת הבדיקה

testCount int: המספר הכולל של הבדיקות בהרצת הבדיקה

attemptNumber int: מספר ההזמנה, שמזהה את הניסיונות השונים של אותו runName שמופעל כמה פעמים. הערך של attemptNumber מתחיל מ-0 וצריך לעלות בכל פעם שמבוצעת ריצה חדשה. לדוגמה, אם מבוצעות 3 פעמים ניסיונות חוזרים של בדיקה, צריכות להיות 4 ריצות בסך הכול תחת אותו runName, והערך של attemptNumber יהיה מ-0 עד 3.

startTime long: שעת ההתחלה של ההרצה, נמדדת באמצעות System.currentTimeMillis()

testRunStopped

public final void testRunStopped (long elapsedTime)

הפעלת הבדיקה של הדוחות הופסקה לפני שהסתיימה בגלל בקשה של משתמש.

TODO: currently unused, consider removing

פרמטרים
elapsedTime long: הזמן שחלף שדווח על ידי המכשיר, באלפיות השנייה

testSkipped

public final void testSkipped (TestDescription test, 
                SkipReason reason)

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

פרמטרים
test TestDescription: מזהה את הבדיקה

reason SkipReason: SkipReason

testStarted

public final void testStarted (TestDescription test, 
                long startTime)

חלופה ל-testStarted(com.android.tradefed.result.TestDescription) שבה מציינים גם מתי הבדיקה התחילה, בשילוב עם ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) למדידה מדויקת.

פרמטרים
test TestDescription: מזהה את הבדיקה

startTime long: השעה שבה הבדיקה התחילה, נמדדת באמצעות System.currentTimeMillis()

testStarted

public final void testStarted (TestDescription test)

מקרי בדיקה של התקשרות חזרה

פרמטרים
test TestDescription: מזהה את הבדיקה

שיטות מוגנות

cleanUp

protected void cleanUp ()

getMetricType

protected MetricMeasurement.DataType getMetricType ()

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

החזרות
MetricMeasurement.DataType

getRunName

protected String getRunName ()

החזרות
String