ResultDBReporter

public class ResultDBReporter
extends Object implements IConfigurationReceiver, ILogSaverListener, ISupportGranularResults, ITestSummaryListener

java.lang.Object
   ↳ com.android.tradefed.result.resultdb.ResultDBReporter


כלי לדיווח על תוצאות שמעלה את תוצאות הבדיקה ל-ResultDB.

סיכום

שדות

protected IInvocationContext mContext

protected boolean mEnableAlTestProperties

‫constructors ציבוריים

ResultDBReporter()

‫methods ציבוריים

TestSummary getSummary()

מאפשר ל-InvocationListener להחזיר סיכום.

void invocationEnded(long elapsedTime)

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

void invocationFailed(FailureDescription failure)

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

void invocationFailed(Throwable cause)

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

void invocationSkipped(SkipReason reason)

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

void invocationStarted(IInvocationContext context)

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

boolean isDisabled()
void logAssociation(String dataName, LogFile logFile)

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

void setConfiguration(IConfiguration configuration)

הוספת ה-IConfiguration שנמצא בשימוש.

void setLogSaver(ILogSaver logSaver)

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

boolean supportGranularResults()

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

void testAssumptionFailure(TestDescription test, String trace)

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

void testAssumptionFailure(TestDescription test, FailureDescription failure)

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

void testEnded(TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)

חלופה ל-testEnded(TestDescription,Map) שבה אפשר לציין את שעת הסיום ישירות.

void testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)

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

void testFailed(TestDescription test, FailureDescription failure)

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

void testFailed(TestDescription test, String trace)

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

void testIgnored(TestDescription test)

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

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

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

void testModuleEnded()

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

void testModuleStarted(IInvocationContext moduleContext)

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

void testRunEnded(long elapsedTimeMillis, HashMap<String, MetricMeasurement.Metric> runMetrics)

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

void testRunFailed(FailureDescription failure)

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

void testRunFailed(String errorMessage)

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

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

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

void testSkipped(TestDescription test, SkipReason reason)

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

void testStarted(TestDescription test, long startTime)

חלופה ל-testStarted(TestDescription) שבה מציינים גם את תאריך ההתחלה של הבדיקה, בשילוב עם testEnded(TestDescription,long,Map) למדידה מדויקת.

void testStarted(TestDescription test)

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

void uploadStoragePath(String resourceId, String storagePath, LogFile logFile)

העלאת נתיב האחסון של ארטיפקט של בדיקת AnTS אל ResultDB.

שדות

mContext

protected IInvocationContext mContext

mEnableAlTestProperties

protected boolean mEnableAlTestProperties

‫constructors ציבוריים

ResultDBReporter

public ResultDBReporter ()

‫methods ציבוריים

getSummary

public TestSummary getSummary ()

מאפשר ל-InvocationListener להחזיר סיכום.

החזרות
TestSummary מחרוזת TestSummary שמסכמת את ההפעלה, או ערך null

invocationEnded

public void invocationEnded (long elapsedTime)

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

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

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

invocationFailed

public void invocationFailed (FailureDescription failure)

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

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

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

invocationFailed

public void invocationFailed (Throwable cause)

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

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

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

invocationSkipped

public void invocationSkipped (SkipReason reason)

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

פרמטרים
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

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

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

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

isDisabled

public boolean isDisabled ()

החזרות
boolean

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

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

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

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

setConfiguration

public void setConfiguration (IConfiguration configuration)

הוספת ה-IConfiguration שנמצא בשימוש.

פרמטרים
configuration IConfiguration

setLogSaver

public void setLogSaver (ILogSaver logSaver)

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

פרמטרים
logSaver ILogSaver: ILogSaver

supportGranularResults

public boolean supportGranularResults ()

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

החזרות
boolean

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

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

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

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

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

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

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

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

testEnded

public void testEnded (TestDescription test, 
                long endTime, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

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

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

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

testMetrics HashMap: Map של המדדים שנפלטים

testEnded

public void testEnded (TestDescription test, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

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

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

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

testMetrics HashMap: Map של המדדים שנפלטים

testFailed

public void testFailed (TestDescription test, 
                FailureDescription failure)

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

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

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

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

testFailed

public void testFailed (TestDescription test, 
                String trace)

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

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

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

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

testIgnored

public void testIgnored (TestDescription test)

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

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

testLog

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

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

חובה להתקשר לפני ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) או ERROR(/ITestInvocationListener#invocationEnded(long))

השיטה הזו נקראת אוטומטית על ידי מסגרת TradeFederation, ומספקת את יומן המארח ואת יומן ה-logcat של המכשיר, אם רלוונטי.

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

dataType LogDataType: LogDataType הנתונים

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

testModuleEnded

public void testModuleEnded ()

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

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

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

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

testRunEnded

public void testRunEnded (long elapsedTimeMillis, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

דוחות על סיום הרצת הבדיקה. FIXME: We cannot have two Map<> interfaces with different type, so we have to use HashMap here.

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

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

testRunFailed

public void testRunFailed (FailureDescription failure)

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

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

testRunFailed

public void testRunFailed (String errorMessage)

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

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

testRunStarted

public 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 void testRunStarted (String runName, 
                int testCount)

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

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

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

testRunStarted

public 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 void testRunStopped (long elapsedTime)

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

TODO: currently unused, consider removing

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

testSkipped

public void testSkipped (TestDescription test, 
                SkipReason reason)

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

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

reason SkipReason: SkipReason

testStarted

public void testStarted (TestDescription test, 
                long startTime)

חלופה ל-testStarted(TestDescription) שבה מציינים גם את תאריך ההתחלה של הבדיקה, בשילוב עם testEnded(TestDescription,long,Map) למדידה מדויקת.

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

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

testStarted

public void testStarted (TestDescription test)

הפונקציה מדווחת על תחילת בדיקה של תרחיש בדיקה מסוים. בממשק הישן, מומלץ להשתמש ב-testStarted(TestDescription) בכל הזדמנות.

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

uploadStoragePath

public void uploadStoragePath (String resourceId, 
                String storagePath, 
                LogFile logFile)

העלאת נתיב האחסון של ארטיפקט של בדיקת AnTS אל ResultDB.

זהו פתרון זמני להעברה מ-AnTS ל-ResultDB (ראו go/convergence-tr). ה-method הזו מופעלת על ידי כלי הדיווח של AnTS כשנתיב האחסון של ארטיפקט הופך לזמין.

הכלי AnTS Reporter מבטיח שהוא יקרא לשיטה הזו עבור כל ארטיפקט שהוא מעלה. הכלי הזה יעלה את כל הארטיפקטים האלה ל-ResultDB עם השיוך הנכון לבדיקה. כדי שהיומן ישויך בצורה נכונה,צריך לקרוא ל-logAssociation(String,LogFile) עבור אותו מזהה משאב מראש. כך מוודאים שהארטיפקט כבר במעקב. אחרת, הארטיפקט ישויך ליחידת העבודה ברמה העליונה של הקריאה לפונקציה tradefed.

אסור להפעיל את ה-method הזו לפני invocationStarted(IInvocationContext). אפשר לקרוא לה אחרי invocationEnded(long) עבור הפעלות שמנוהלות על ידי מערכת במעלה הזרם, כי הן לא מסתיימות על ידי כלי הדיווח הזה. הכלל הזה לא חל על הפעלות שנוצרו באופן מקומי, שמושלמות ב-invocationEnded(long).

TODO(b/464941055): Remove this method once we can properly migrate AnTS artifacts to ResultDB.

פרמטרים
resourceId String: מזהה המשאב של הארטיפקט.

storagePath String: נתיב האחסון של הארטיפקט (לדוגמה, נתיב ‎ /bigstore/ ‎).

logFile LogFile: אובייקט LogFile שמשויך לארטיפקט.