Proto resultReporter (דיווח על תוצאות)

public abstract class ProtoResultReporter
extends Object implements ILogSaverListener, ISupportGranularResults, ITestInvocationListener

JavaScript.lang.Object
com.android.tradefed.result.proto.ProtoresultsReporter


כתב התוצאות יבנה אב-טיפוס של TestRecord שכולל את כל התוצאות. צריך להיות הורחב כדי לטפל בדברים שאפשר לעשות עם ה-Proto הסופי בprocessFinalProto(com.android.tradefed.result.proto.TestRecordProto.TestRecord).

סיכום

בנאים ציבוריים

ProtoResultReporter()

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

final void invocationEnded(long elapsedTime)

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

void invocationFailed(FailureDescription failure)

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

void invocationFailed(Throwable cause)

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

void invocationSkipped(SkipReason reason)

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

final void invocationStarted(IInvocationContext context)

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

final void logAssociation(String dataName, LogFile logFile)

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

void processFinalInvocationLogs(TestRecordProto.TestRecord invocationLogs)

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

void processFinalProto(TestRecordProto.TestRecord finalRecord)

טיפול בפרוטו הסופי עם כל התוצאות.

void processStartInvocation(TestRecordProto.TestRecord invocationStartRecord, IInvocationContext invocationContext)

טיפול בפרוטו של רשומת הבדיקה החלקית של הבדיקה אחרי invocationStarted(com.android.tradefed.invoker.IInvocationContext).

void processTestCaseEnded(TestRecordProto.TestRecord testCaseRecord)

טיפול בפרוטו של הרשומה הסופית של מקרי הבדיקה אחרי שהתרחש ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap)).

void processTestCaseStarted(TestRecordProto.TestRecord testCaseStartedRecord)

טיפול בפרוטו של הרשומה החלקית של מקרי הבדיקה אחרי שהתרחש testStarted(com.android.tradefed.result.TestDescription, long).

void processTestModuleEnd(TestRecordProto.TestRecord moduleRecord)

טיפול בפרוטו של רשומת המודול הסופית אחרי testModuleEnded().

void processTestModuleStarted(TestRecordProto.TestRecord moduleStartRecord)

טיפול בפרוטו של רשומת המודול החלקית אחרי שהתרחש testModuleStarted(com.android.tradefed.invoker.IInvocationContext).

void processTestRunEnded(TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

טיפול בפרוטו של רשומת ההרצה הסופית אחרי ERROR(/#testRunEnded(long,HashMap)) אירעה שגיאה.

void processTestRunStarted(TestRecordProto.TestRecord runStartedRecord)

טיפול בפרוטו של רשומת הבדיקה החלקית של הרצת הבדיקה אחרי testRunStarted(String, int) אירעה שגיאה.

void setGranularResults(boolean granularResults)
void setInlineRecordOfChildren(boolean inline)
boolean supportGranularResults()

מחזירה את הערך True אם המדווח תומך בתוצאות מפורטות. אחרת, הוא מקבל את הערך False.

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)) שבה ניתן לציין את שעת הסיום ישירות.

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 testModuleEnded()

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

final void testModuleStarted(IInvocationContext moduleContext)

מדווח על תחילת המודול שפועל.

final void testRunEnded(long elapsedTimeMillis, runMetrics)

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

final void testRunFailed(FailureDescription failure)

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

final void testRunFailed(String errorMessage)

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

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

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

final void testRunStarted(String runName, int testCount)

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

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

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

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)

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

שיטות מוגנות

TestRecordProto.ChildReference createModuleChildReference(TestRecordProto.TestRecord record)

יוצרת הפניית צאצא למודול.

בנאים ציבוריים

Proto resultReporter (דיווח על תוצאות)

public ProtoResultReporter ()

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

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

public final void invocationEnded (long elapsedTime)

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

תתבצע קריאה אוטומטית על ידי framework של TradeFederation.

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

ההפעלה נכשלה

public void invocationFailed (FailureDescription failure)

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

תתבצע קריאה אוטומטית על ידי framework של TradeFederation.

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

ההפעלה נכשלה

public void invocationFailed (Throwable cause)

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

תתבצע קריאה אוטומטית על ידי framework של TradeFederation.

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

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

public void invocationSkipped (SkipReason reason)

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

פרמטרים
reason SkipReason

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

public final void invocationStarted (IInvocationContext context)

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

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

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

שיוך (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 שתועד בעבר וצריך להיות משויך אל מקרה בדיקה.

productFinalInvocationLogs

public void processFinalInvocationLogs (TestRecordProto.TestRecord invocationLogs)

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

פרמטרים
invocationLogs TestRecordProto.TestRecord: הפרוטו הסופי שמייצג את ההפעלה.

לעבדFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

טיפול בפרוטו הסופי עם כל התוצאות.

פרמטרים
finalRecord TestRecordProto.TestRecord: הפרוטו הסופי עם כל תוצאות ההפעלה.

ProcessStartInvocation

public void processStartInvocation (TestRecordProto.TestRecord invocationStartRecord, 
                IInvocationContext invocationContext)

טיפול בפרוטו של רשומת הבדיקה החלקית של הבדיקה אחרי invocationStarted(com.android.tradefed.invoker.IInvocationContext).

פרמטרים
invocationStartRecord TestRecordProto.TestRecord: ה-proto החלקי מאוכלס אחרי ה-invocationStart.

invocationContext IInvocationContext: ההפעלה IInvocationContext.

לעבדTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

טיפול בפרוטו של הרשומה הסופית של מקרי הבדיקה אחרי שהתרחש ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap)).

פרמטרים
testCaseRecord TestRecordProto.TestRecord: האב הסופי שמייצג מקרה בדיקה.

לעבדTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

טיפול בפרוטו של הרשומה החלקית של מקרי הבדיקה אחרי שהתרחש testStarted(com.android.tradefed.result.TestDescription, long).

פרמטרים
testCaseStartedRecord TestRecordProto.TestRecord: הפרוטו החלקי שמייצג את מקרה הבדיקה.

ProcessTestModuleEnd

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

טיפול בפרוטו של רשומת המודול הסופית אחרי testModuleEnded().

פרמטרים
moduleRecord TestRecordProto.TestRecord: האב הסופי שמייצג את המודול.

ProcessTestModuleStarted

public void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

טיפול בפרוטו של רשומת המודול החלקית אחרי שהתרחש testModuleStarted(com.android.tradefed.invoker.IInvocationContext).

פרמטרים
moduleStartRecord TestRecordProto.TestRecord: הפרוטו החלקי שמייצג את המודול.

לעבדTestRunEnded

public void processTestRunEnded (TestRecordProto.TestRecord runRecord, 
                boolean moduleInProgress)

טיפול בפרוטו של רשומת ההרצה הסופית אחרי ERROR(/#testRunEnded(long,HashMap)) אירעה שגיאה.

פרמטרים
runRecord TestRecordProto.TestRecord: ה-Proto הסופי שמייצג את הריצה.

moduleInProgress boolean: האם מודול נמצא בשלבי ביצוע או לא.

fullTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

טיפול בפרוטו של רשומת הבדיקה החלקית של הרצת הבדיקה אחרי testRunStarted(String, int) אירעה שגיאה.

פרמטרים
runStartedRecord TestRecordProto.TestRecord: ה-Proto החלקי שמייצג את הריצה.

setGranularResults

public void setGranularResults (boolean granularResults)

פרמטרים
granularResults boolean

setInlineRecordOfChildren

public void setInlineRecordOfChildren (boolean inline)

פרמטרים
inline boolean

תמיכה ב-Granular Results

public boolean supportGranularResults ()

מחזירה את הערך True אם המדווח תומך בתוצאות מפורטות. אחרת, הוא מקבל את הערך False.

החזרות
boolean

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 void testEnded (TestDescription test, 
                 testMetrics)

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

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

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

testMetrics : ERROR(/Map) מהמדדים שנפלטו

הבדיקה נכשלה

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: דוח קריסות של כשל

התעלמות מבדיקה

public final void testIgnored (TestDescription test)

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

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

testModuleEnded

public final void testModuleEnded ()

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

TestModuleStarted

public final void testModuleStarted (IInvocationContext moduleContext)

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

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

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

public final void testRunEnded (long elapsedTimeMillis, 
                 runMetrics)

הדוחות הסתיימו של הרצת הבדיקה. FIXME: אנחנו לא יכולים ליצור שתי מפות<> עם סוגים שונים, כאן צריך להשתמש ב-HashMap.

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

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

הבדיקה נכשלה

public final void testRunFailed (FailureDescription failure)

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

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

הבדיקה נכשלה

public final void testRunFailed (String errorMessage)

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

פרמטרים
errorMessage String: String מתארת את הסיבה לכשל בהפעלה.

בדיקת ההרצה

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

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

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

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

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

בדיקת ההרצה

public final void testRunStarted (String runName, 
                int testCount)

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

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

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

בדיקת ההרצה

public 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()

הבדיקה דילגה

public final void testSkipped (TestDescription test, 
                SkipReason reason)

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

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

reason SkipReason: SkipReason

הבדיקה התחילה

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()

הבדיקה התחילה

public final void testStarted (TestDescription test)

מדווח על ההתחלה של מקרה בדיקה ספציפי. בממשק ישן, צריך להשתמש ב-testStarted(com.android.tradefed.result.TestDescription) כשהדבר אפשרי.

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

שיטות מוגנות

createModuleChildReference בשירות

protected TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

יוצרת הפניית צאצא למודול.

פרמטרים
record TestRecordProto.TestRecord

החזרות
TestRecordProto.ChildReference