מדווח תוצאות של עיבוד משנה
public
class
SubprocessResultsReporter
extends Object
implements
ILogSaverListener,
ISupportGranularResults,
ITestInvocationListener
JavaScript.lang.Object | |
↳ | com.android.tradefed.result.SubProcessresultsReporter |
נעשה שימוש ב-ITestInvocationListener
שיצוין בו כמדווח התוצאה ותתבצע העברה מ:
לעבד את התוצאות של בדיקות, הרצות בדיקה והפעלות של בדיקות.
סיכום
בנאים ציבוריים | |
---|---|
SubprocessResultsReporter()
|
שיטות ציבוריות | |
---|---|
void
|
close()
|
TestSummary
|
getSummary()
מאפשר ל-InvocationListener להחזיר סיכום. |
void
|
invocationEnded(long elapsedTime)
דיווחים שההפעלה הסתיימה, בין אם בהצלחה או בגלל שגיאה כלשהי תנאי. |
void
|
invocationFailed(FailureDescription failure)
מדווח על הפעלה שלא הושלמה עקב מצב שגיאה כלשהו. |
void
|
invocationFailed(Throwable cause)
מדווח על הפעלה שלא הושלמה עקב מצב שגיאה כלשהו. |
void
|
invocationStarted(IInvocationContext context)
מדווח על התחלת ההפעלה של הבדיקה. |
void
|
logAssociation(String dataName, LogFile logFile)
במקרים מסוימים היומן צריך להיות משויך באופן הדוק למקרי הבדיקה, אבל אפשר לעשות זאת
כך גם בקישור הישיר |
void
|
printEvent(String key, Object event)
עוזר להדפיס את מפתח האירוע ולאחר מכן את אובייקט ה-json. |
void
|
setOutputTestLog(boolean outputTestLog)
מגדיר אם עלינו ליצור פלט של הבדיקה ביומן או לא. |
boolean
|
supportGranularResults()
מחזירה את הערך True אם המדווח תומך בתוצאות מפורטות. אחרת, הוא מקבל את הערך False. |
void
|
testAssumptionFailure(TestDescription testId, String trace)
מופעלת כשבדיקה אטומית מסמנת שהיא מניחה שהתנאי לא נכון |
void
|
testAssumptionFailure(TestDescription testId, FailureDescription failure)
מופעלת כשבדיקה אטומית מסמנת שהיא מניחה שהתנאי לא נכון |
void
|
testEnded(TestDescription testId, long endTime,
חלופה ל- |
void
|
testEnded(TestDescription testId,
מדווח על סיום ההפעלה של מקרה בדיקה ספציפי. |
void
|
testFailed(TestDescription testId, FailureDescription failure)
מדווח על כשל במקרה בדיקה ספציפי. |
void
|
testFailed(TestDescription testId, String reason)
מדווח על כשל במקרה בדיקה ספציפי. |
void
|
testIgnored(TestDescription testId)
נשלחת קריאה כאשר בדיקה לא תבוצע, בדרך כלל מפני שלשיטת בדיקה יש הערות עם org.junit.ignore. |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
מספקת את נתוני היומן או נתוני ניפוי הבאגים המשויכים מהפעלת הבדיקה. |
void
|
testModuleEnded()
מדווח על סיום הרצת מודול. |
void
|
testModuleStarted(IInvocationContext moduleContext)
מדווח על תחילת המודול שפועל. |
void
|
testRunEnded(long time,
הדוחות הסתיימו של הרצת הבדיקה. |
void
|
testRunFailed(FailureDescription failure)
הרצת בדיקת הדוחות נכשלה בגלל כשל שתואר על ידי |
void
|
testRunFailed(String reason)
הפעלת בדיקת הדוחות נכשלה עקב שגיאה חמורה. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
מדווח על התחלה של הרצת בדיקה. |
void
|
testRunStarted(String runName, int testCount)
מדווח על התחלה של הרצת בדיקה. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
מדווח על התחלה של הרצת בדיקה. |
void
|
testRunStopped(long arg0)
הפעלת בדיקת הדוחות הופסקה לפני שהסתיימה עקב בקשה של משתמש. |
void
|
testSkipped(TestDescription testId, SkipReason reason)
מוצגת קריאה כשמדלגים על בדיקה והיא לא בוצעה מסיבה שבדרך כלל לא צפויה. |
void
|
testStarted(TestDescription testId, long startTime)
חלופה ל- |
void
|
testStarted(TestDescription testId)
מדווח על ההתחלה של מקרה בדיקה ספציפי. |
בנאים ציבוריים
מדווח תוצאות של עיבוד משנה
public SubprocessResultsReporter ()
שיטות ציבוריות
סגירה
public void close ()
getSummary
public TestSummary getSummary ()
מאפשר ל-InvocationListener להחזיר סיכום.
החזרות | |
---|---|
TestSummary |
TestSummary שמסכם את הריצה, או null |
ההפעלה הסתיימה
public 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 invocationStarted (IInvocationContext context)
מדווח על התחלת ההפעלה של הבדיקה.
תתבצע קריאה אוטומטית על ידי framework של TradeFederation. המדווחים צריכים לשנות את ברירת המחדל בשיטה הזאת, יש תמיכה בדיווח על כמה מכשירים.
פרמטרים | |
---|---|
context |
IInvocationContext : מידע על ההפעלה |
שיוך (logAssociation)
public 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 שתועד בעבר וצריך להיות משויך אל
מקרה בדיקה. |
printEvent
public void printEvent (String key, Object event)
עוזר להדפיס את מפתח האירוע ולאחר מכן את אובייקט ה-json.
פרמטרים | |
---|---|
key |
String |
event |
Object |
setOutputTestLog
public void setOutputTestLog (boolean outputTestLog)
מגדיר אם עלינו ליצור פלט של הבדיקה ביומן או לא.
פרמטרים | |
---|---|
outputTestLog |
boolean |
תמיכה ב-Granular Results
public boolean supportGranularResults ()
מחזירה את הערך True אם המדווח תומך בתוצאות מפורטות. אחרת, הוא מקבל את הערך False.
החזרות | |
---|---|
boolean |
testAssumptionFailure
public void testAssumptionFailure (TestDescription testId, String trace)
מופעלת כשבדיקה אטומית מסמנת שהיא מניחה שהתנאי לא נכון
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
trace |
String : דוח קריסות של כשל |
testAssumptionFailure
public void testAssumptionFailure (TestDescription testId, FailureDescription failure)
מופעלת כשבדיקה אטומית מסמנת שהיא מניחה שהתנאי לא נכון
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
failure |
FailureDescription : FailureDescription מתאר את הכשל ואת ההקשר שלו. |
הבדיקה הסתיימה
public void testEnded (TestDescription testId, long endTime,metrics)
חלופה ל-ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map))
שבה ניתן לציין את שעת הסיום
ישירות. כדי למדוד במדויק, צריך להשתמש בשילוב עם המאפיין testStarted(com.android.tradefed.result.TestDescription, long)
.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
endTime |
long : זמן הסיום של הבדיקה, שנמדד באמצעות System.currentTimeMillis() |
metrics |
: ERROR(/Map) מהמדדים שנפלטו |
הבדיקה הסתיימה
public void testEnded (TestDescription testId,metrics)
מדווח על סיום ההפעלה של מקרה בדיקה ספציפי.
אם לא הפעלת את testFailed(TestDescription, FailureDescription)
, הבדיקה הזו עברה. מחזירה גם כל מפתח/ערך
מדדים שייתכן שהתקבלו במהלך הביצוע של מקרה הבדיקה.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
metrics |
: ERROR(/Map) מהמדדים שנפלטו |
הבדיקה נכשלה
public void testFailed (TestDescription testId, FailureDescription failure)
מדווח על כשל במקרה בדיקה ספציפי.
הקריאה תתבצע בין testStarted ל-testEnded.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
failure |
FailureDescription : FailureDescription מתאר את הכשל ואת ההקשר שלו. |
הבדיקה נכשלה
public void testFailed (TestDescription testId, String reason)
מדווח על כשל במקרה בדיקה ספציפי.
הקריאה תתבצע בין testStarted ל-testEnded.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
reason |
String : דוח קריסות של כשל |
התעלמות מבדיקה
public void testIgnored (TestDescription testId)
נשלחת קריאה כאשר בדיקה לא תבוצע, בדרך כלל מפני שלשיטת בדיקה יש הערות עם org.junit.ignore.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
יומן בדיקה
public void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
מספקת את נתוני היומן או נתוני ניפוי הבאגים המשויכים מהפעלת הבדיקה.
חובה להתקשר לפני ERROR(/ITestInvocationListener#invocationFailed(Throwable))
או
ERROR(/ITestInvocationListener#invocationEnded(long))
מערכת TradeFederation תקרא באופן אוטומטי לשיטה הזו, ותספק את יומן המארח ואם רלוונטי, את ה-Logcat של המכשיר.
פרמטרים | |
---|---|
dataName |
String : שם תיאורי של הנתונים String . לדוגמה 'device_logcat'. הערה
dataName לא יכול להיות ייחודי בכל הפעלה. כלומר, הטמעות צריכות להיות מסוגלות לטפל
כמה קריאות עם אותו dataName |
dataType |
LogDataType : ה-LogDataType של הנתונים |
dataStream |
InputStreamSource : ה-InputStreamSource של הנתונים. מטמיעים צריכים להתקשר
CreateInputStream כדי להתחיל לקרוא את הנתונים, ולוודא לסגור את
StreamStream לאחר השלמת הפעולה. המתקשרים צריכים לוודא שמקור הנתונים יישאר
קיימים ונגישים עד לסיום שיטת testLog. |
testModuleEnded
public void testModuleEnded ()
מדווח על סיום הרצת מודול.
TestModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
מדווח על תחילת המודול שפועל. הקריאה החוזרת הזו משויכת ל-testModuleEnded()
והיא אופציונלית ברצף. נעשה בו שימוש רק במהלך הרצה שנעשה בה שימוש
מודולים של הרצה בחבילות.
פרמטרים | |
---|---|
moduleContext |
IInvocationContext : ה-IInvocationContext של המודול. |
הבדיקה הסתיימה
public void testRunEnded (long time,runMetrics)
הדוחות הסתיימו של הרצת הבדיקה. FIXME: אנחנו לא יכולים ליצור שתי מפות<> עם סוגים שונים, כאן צריך להשתמש ב-HashMap.
פרמטרים | |
---|---|
time |
long : דיווח על הזמן שחלף במכשיר, באלפיות השנייה |
runMetrics |
: צמדי מפתח/ערך מדווחים בסיום הרצת בדיקה עם Metric . |
הבדיקה נכשלה
public void testRunFailed (FailureDescription failure)
הרצת בדיקת הדוחות נכשלה בגלל כשל שתואר על ידי FailureDescription
.
פרמטרים | |
---|---|
failure |
FailureDescription : FailureDescription מתאר את הכשל ואת ההקשר שלו. |
הבדיקה נכשלה
public void testRunFailed (String reason)
הפעלת בדיקת הדוחות נכשלה עקב שגיאה חמורה.
פרמטרים | |
---|---|
reason |
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 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() |
TestRunSStop
public void testRunStopped (long arg0)
הרצת בדיקת הדוחות הופסקה לפני שהסתיימה עקב בקשה של משתמש.
TODO: לא בשימוש כרגע, כדאי להסיר
פרמטרים | |
---|---|
arg0 |
long : דיווח על הזמן שחלף במכשיר, באלפיות השנייה |
הבדיקה דילגה
public void testSkipped (TestDescription testId, SkipReason reason)
מוצגת קריאה כשמדלגים על בדיקה והיא לא בוצעה מסיבה שבדרך כלל לא צפויה. ננסה לבצע שוב את הבדיקות האלה כדי להוציא לפועל כמו שצריך.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
reason |
SkipReason : SkipReason |
הבדיקה התחילה
public void testStarted (TestDescription testId, long startTime)
חלופה ל-testStarted(com.android.tradefed.result.TestDescription)
שבה מציינים גם מתי הבדיקה
התחיל, בשילוב עם ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))
למדידה מדויקת.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |
startTime |
long : השעה שבה התחילה הבדיקה, שנמדדת באמצעות System.currentTimeMillis() |
הבדיקה התחילה
public void testStarted (TestDescription testId)
מדווח על ההתחלה של מקרה בדיקה ספציפי. בממשק ישן, צריך להשתמש ב-testStarted(com.android.tradefed.result.TestDescription)
כשהדבר אפשרי.
פרמטרים | |
---|---|
testId |
TestDescription : מזהה את הבדיקה |