מעבד BasePostCPU

public abstract class BasePostProcessor
extends Object implements IPostProcessor

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


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

סיכום

יוצרים ציבוריים

BasePostProcessor()

שיטות ציבוריות

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)

פונקציות מאזיני הפעלה להעברה

final boolean isDisabled()

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

final void logAssociation(String dataName, LogFile logFile)

במקרים מסוימים, צריך לשייך את היומן באופן חזק למקרה בדיקה, אבל אי אפשר לעשות זאת בקריאה החוזרת (callback) הישירה של 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)

בדיקת קריאות חזרה (callbacks) להרצה

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)

קריאות חוזרות (callback) של מקרי בדיקה

שיטות מוגנות

void cleanUp()
MetricMeasurement.DataType getMetricType()

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

String getRunName()

יוצרים ציבוריים

מעבד BasePostCPU

public BasePostProcessor ()

שיטות ציבוריות

init

public final ITestInvocationListener init (ITestInvocationListener listener)

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

פרמטרים
listener ITestInvocationListener

החזרות
ITestInvocationListener

ההפעלה הסתיימה

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 הסיבה לכישלון

המערכת דילגה על ההפעלה

public void invocationSkipped (SkipReason reason)

דיווח על הפעלה כתוכן שדילגת עליו

פרמטרים
reason SkipReason

ההפעלה התחילה

public final void invocationStarted (IInvocationContext context)

פונקציות מאזיני הפעלה להעברה

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

isDisabled

public final boolean isDisabled ()

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

החזרות
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 : קבוצת קובצי היומן להרצת הבדיקה.

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

fullTestMetricsAndLogs

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 שמתאר את התקלה ואת ההקשר שלה.

הבדיקה הסתיימה

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) של המדדים שמונפקים

הבדיקה הסתיימה

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 שמתאר את התקלה ואת ההקשר שלה.

הבדיקה נכשלה

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: מזהה את הבדיקה

יומן בדיקה

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 כדי להתחיל לקרוא את הנתונים, ולוודא לסגור את StreamStream לאחר השלמת הפעולה.

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 : צמדי מפתח/ערך מדווחים בסיום הרצת בדיקה

הבדיקה נכשלה

public final void testRunFailed (FailureDescription failure)

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

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

הבדיקה נכשלה

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)

בדיקה של קריאות חזרה (callbacks)

פרמטרים
runName String: שם ההרצה לניסיון

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

בדיקת ההרצה

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

מדווח על התחלה של הרצת בדיקה.

פרמטרים
runName String: שם ההרצה לניסיון

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

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

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

testRunStopped

public final void testRunStopped (long elapsedTime)

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

TODO: לא בשימוש כרגע, כדאי להסיר

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

הבדיקה דילגה

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)

קריאות חוזרות (callback) של מקרי בדיקה

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

שיטות מוגנות

cleanUp

protected void cleanUp ()

getMetricType

protected MetricMeasurement.DataType getMetricType ()

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

החזרות
MetricMeasurement.DataType

getRunName

protected String getRunName ()

החזרות
String