ResultDBReporter
public
class
ResultDBReporter
extends Object
implements
IConfigurationReceiver,
ILogSaverListener,
ISupportGranularResults,
ITestSummaryListener
| java.lang.Object | |
| ↳ | com.android.tradefed.result.resultdb.ResultDBReporter |
Reporter wyników, który przesyła wyniki testów do ResultDB.
Podsumowanie
Pola | |
|---|---|
protected
IInvocationContext |
mContext
|
protected
boolean |
mEnableAlTestProperties
|
Konstruktory publiczne | |
|---|---|
ResultDBReporter()
|
|
Metody publiczne | |
|---|---|
TestSummary
|
getSummary()
Umożliwia interfejsowi InvocationListener zwracanie podsumowania. |
void
|
invocationEnded(long elapsedTime)
Informuje, że wywołanie zostało zakończone, niezależnie od tego, czy zakończyło się ono pomyślnie, czy z powodu błędu. |
void
|
invocationFailed(FailureDescription failure)
Zgłasza niekompletne wywołanie z powodu błędu. |
void
|
invocationFailed(Throwable cause)
Zgłasza niekompletne wywołanie z powodu błędu. |
void
|
invocationSkipped(SkipReason reason)
Zgłasza wywołanie jako pominięte |
void
|
invocationStarted(IInvocationContext context)
Zgłasza rozpoczęcie wywołania testu. |
boolean
|
isDisabled()
|
void
|
logAssociation(String dataName, LogFile logFile)
W niektórych przypadkach dziennik musi być ściśle powiązany z przypadkami testowymi, ale nie można tego zrobić w bezpośrednim wywołaniu zwrotnym |
void
|
setConfiguration(IConfiguration configuration)
Wstawia używaną wartość |
void
|
setLogSaver(ILogSaver logSaver)
Ustaw |
boolean
|
supportGranularResults()
Zwraca wartość „True”, jeśli narzędzie do raportowania obsługuje szczegółowe wyniki, w przeciwnym razie zwraca wartość „False”. |
void
|
testAssumptionFailure(TestDescription test, String trace)
Wywoływana, gdy test atomowy zgłasza, że zakłada warunek, który jest fałszywy |
void
|
testAssumptionFailure(TestDescription test, FailureDescription failure)
Wywoływana, gdy test atomowy zgłasza, że zakłada warunek, który jest fałszywy |
void
|
testEnded(TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)
Alternatywa dla |
void
|
testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Zgłasza zakończenie wykonania pojedynczego elementu testowania. |
void
|
testFailed(TestDescription test, FailureDescription failure)
Zgłasza niepowodzenie pojedynczego elementu testowania. |
void
|
testFailed(TestDescription test, String trace)
Zgłasza niepowodzenie pojedynczego elementu testowania. |
void
|
testIgnored(TestDescription test)
Wywoływana, gdy test nie zostanie uruchomiony, zwykle dlatego, że metoda testowa jest oznaczona adnotacją org.junit.Ignore. |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
Zawiera powiązane dane dziennika lub dane debugowania z wywołania testu. |
void
|
testModuleEnded()
Zgłasza zakończenie działania modułu. |
void
|
testModuleStarted(IInvocationContext moduleContext)
Zgłasza rozpoczęcie działania modułu. |
void
|
testRunEnded(long elapsedTimeMillis, HashMap<String, MetricMeasurement.Metric> runMetrics)
Zgłasza zakończenie sesji testowej. |
void
|
testRunFailed(FailureDescription failure)
Zgłasza, że nie udało się ukończyć sesji testowej z powodu błędu opisanego przez |
void
|
testRunFailed(String errorMessage)
Zgłasza, że nie udało się ukończyć sesji testowej z powodu błędu krytycznego. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
Zgłasza rozpoczęcie sesji testowej. |
void
|
testRunStarted(String runName, int testCount)
Zgłasza rozpoczęcie sesji testowej. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
Zgłasza rozpoczęcie sesji testowej. |
void
|
testRunStopped(long elapsedTime)
Zgłasza zatrzymanie sesji testowej przed zakończeniem na prośbę użytkownika. |
void
|
testSkipped(TestDescription test, SkipReason reason)
Wywoływana, gdy test jest pomijany i nie jest wykonywany z przyczyny, która zwykle nie jest oczekiwana. |
void
|
testStarted(TestDescription test, long startTime)
Alternatywa dla |
void
|
testStarted(TestDescription test)
Zgłasza rozpoczęcie pojedynczego elementu testowania. |
void
|
uploadStoragePath(String resourceId, String storagePath, LogFile logFile)
Przesyła ścieżkę do artefaktu testu AnTS do ResultDB. |
Pola
mEnableAlTestProperties
protected boolean mEnableAlTestProperties
Konstruktory publiczne
ResultDBReporter
public ResultDBReporter ()
Metody publiczne
getSummary
public TestSummary getSummary ()
Umożliwia interfejsowi InvocationListener zwracanie podsumowania.
| Zwraca | |
|---|---|
TestSummary |
TestSummary podsumowująca bieg lub wartość null. |
invocationEnded
public void invocationEnded (long elapsedTime)
Informuje, że wywołanie zostało zakończone, niezależnie od tego, czy zakończyło się ono pomyślnie, czy z powodu błędu.
Zostanie automatycznie wywołana przez platformę TradeFederation.
| Parametry | |
|---|---|
elapsedTime |
long: czas trwania wywołania w milisekundach. |
invocationFailed
public void invocationFailed (FailureDescription failure)
Zgłasza niekompletne wywołanie z powodu błędu.
Zostanie automatycznie wywołana przez platformę TradeFederation.
| Parametry | |
|---|---|
failure |
FailureDescription: FailureDescription opisująca przyczynę niepowodzenia. |
invocationFailed
public void invocationFailed (Throwable cause)
Zgłasza niekompletne wywołanie z powodu błędu.
Zostanie automatycznie wywołana przez platformę TradeFederation.
| Parametry | |
|---|---|
cause |
Throwable: Throwable przyczyna niepowodzenia |
invocationSkipped
public void invocationSkipped (SkipReason reason)
Zgłasza wywołanie jako pominięte
| Parametry | |
|---|---|
reason |
SkipReason |
invocationStarted
public void invocationStarted (IInvocationContext context)
Zgłasza rozpoczęcie wywołania testu.
Zostanie automatycznie wywołana przez platformę TradeFederation. Aby obsługiwać raportowanie z wielu urządzeń, reporterzy muszą zastąpić tę metodę.
| Parametry | |
|---|---|
context |
IInvocationContext: informacje o wywołaniu, |
isDisabled
public boolean isDisabled ()
| Zwraca | |
|---|---|
boolean |
|
logAssociation
public void logAssociation (String dataName,
LogFile logFile)W niektórych przypadkach dziennik musi być ściśle powiązany z przypadkami testowymi, ale nie można tego zrobić w bezpośrednim wywołaniu zwrotnym testLogSaved(String,LogDataType,InputStreamSource,LogFile). Dzięki temu wywołaniu zwrotnemu można wyraźnie określić silne powiązanie.
| Parametry | |
|---|---|
dataName |
String: nazwa danych |
logFile |
LogFile: LogFile, który został zarejestrowany wcześniej i powinien być powiązany z elementem testowania. |
setConfiguration
public void setConfiguration (IConfiguration configuration)
Wstawia używaną wartość IConfiguration.
| Parametry | |
|---|---|
configuration |
IConfiguration |
setLogSaver
public void setLogSaver (ILogSaver logSaver)
Ustaw ILogSaver, aby umożliwić osobie wdrażającej zapisywanie plików.
| Parametry | |
|---|---|
logSaver |
ILogSaver: ILogSaver |
supportGranularResults
public boolean supportGranularResults ()
Zwraca wartość „True”, jeśli narzędzie do raportowania obsługuje szczegółowe wyniki, w przeciwnym razie zwraca wartość „False”.
| Zwraca | |
|---|---|
boolean |
|
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
Wywoływana, gdy test atomowy zgłasza, że zakłada warunek, który jest fałszywy
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
trace |
String: zrzut stosu błędu |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, FailureDescription failure)
Wywoływana, gdy test atomowy zgłasza, że zakłada warunek, który jest fałszywy
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
failure |
FailureDescription: FailureDescription opisuje błąd i jego kontekst. |
testEnded
public void testEnded (TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)
Alternatywa dla testEnded(TestDescription,Map), w której możemy bezpośrednio określić czas zakończenia. Łącz z testStarted(TestDescription,long), aby uzyskać dokładne pomiary.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
endTime |
long: czas zakończenia testu mierzony za pomocą System.currentTimeMillis() |
testMetrics |
HashMap: Map danych wygenerowanych |
testEnded
public void testEnded (TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Zgłasza zakończenie wykonania pojedynczego elementu testowania.
Jeśli funkcja testFailed(TestDescription, FailureDescription) nie została wywołana, test uznaje się za zaliczony. Zwraca też wszystkie dane klucz/wartość, które mogły zostać wyemitowane podczas wykonywania elementu testowania.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
testMetrics |
HashMap: Map danych wygenerowanych |
testFailed
public void testFailed (TestDescription test, FailureDescription failure)
Zgłasza niepowodzenie pojedynczego elementu testowania.
Wywoływana między testStarted a testEnded.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
failure |
FailureDescription: FailureDescription opisuje błąd i jego kontekst. |
testFailed
public void testFailed (TestDescription test, String trace)
Zgłasza niepowodzenie pojedynczego elementu testowania.
Wywoływana między testStarted a testEnded.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
trace |
String: zrzut stosu błędu |
testIgnored
public void testIgnored (TestDescription test)
Wywoływana, gdy test nie zostanie uruchomiony, zwykle dlatego, że metoda testowa jest oznaczona adnotacją org.junit.Ignore.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
testLog
public void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)Zawiera powiązane dane dziennika lub dane debugowania z wywołania testu.
Musi być wywołana przed ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) lub ERROR(/ITestInvocationListener#invocationEnded(long))
Platforma TradeFederation automatycznie wywoła tę metodę, podając dziennik hosta i w razie potrzeby dziennik logcat urządzenia.
| Parametry | |
|---|---|
dataName |
String: opisowa nazwa danych, np. „device_logcat”.String Uwaga: parametr dataName może nie być unikalny w przypadku każdego wywołania. Oznacza to, że osoby wdrażające muszą być w stanie obsłużyć wiele wywołań z tą samą nazwą dataName. |
dataType |
LogDataType: LogDataType danych |
dataStream |
InputStreamSource: InputStreamSource danych. Osoby wdrażające powinny wywołać funkcję createInputStream, aby rozpocząć odczytywanie danych, i po zakończeniu zamknąć wynikowy strumień InputStream. Wywołujący powinni zadbać o to, aby źródło danych było dostępne do momentu zakończenia działania metody testLog. |
testModuleEnded
public void testModuleEnded ()
Zgłasza zakończenie działania modułu.
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
Zgłasza rozpoczęcie działania modułu. Ten wywołanie zwrotne jest powiązane z elementem testModuleEnded() i jest opcjonalne w sekwencji. Jest używany tylko podczas uruchamiania modułów: narzędzi uruchamiających opartych na pakietach.
| Parametry | |
|---|---|
moduleContext |
IInvocationContext: IInvocationContext modułu. |
testRunEnded
public void testRunEnded (long elapsedTimeMillis,
HashMap<String, MetricMeasurement.Metric> runMetrics)Zgłasza zakończenie sesji testowej. FIXME: Nie możemy mieć dwóch interfejsów Map<> z różnymi typami, więc musimy tutaj użyć HashMap.
| Parametry | |
|---|---|
elapsedTimeMillis |
long: czas, który upłynął od ostatniego zgłoszenia przez urządzenie (w milisekundach) |
runMetrics |
HashMap: pary klucz/wartość zgłaszane na zakończenie sesji testowej z parametrem Metric. |
testRunFailed
public void testRunFailed (FailureDescription failure)
Zgłasza, że nie udało się ukończyć sesji testowej z powodu błędu opisanego przez FailureDescription.
| Parametry | |
|---|---|
failure |
FailureDescription: FailureDescription opisuje błąd i jego kontekst. |
testRunFailed
public void testRunFailed (String errorMessage)
Zgłasza, że nie udało się ukończyć sesji testowej z powodu błędu krytycznego.
| Parametry | |
|---|---|
errorMessage |
String: String opisuje przyczynę niepowodzenia uruchomienia. |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber)Zgłasza rozpoczęcie sesji testowej.
| Parametry | |
|---|---|
runName |
String: nazwa sesji testowej |
testCount |
int: łączna liczba testów podczas sesji testowej |
attemptNumber |
int: numer zamówienia, który identyfikuje różne próby tego samego uruchomienia runName
wykonywanego wielokrotnie. Numer próby jest indeksowany od 0 i powinien zwiększać się za każdym razem, gdy następuje nowe uruchomienie. Przykład: test jest ponownie uruchamiany 3 razy, więc powinien mieć łącznie 4 uruchomienia pod tą samą nazwą uruchomienia, a numer próby powinien wynosić od 0 do 3. |
testRunStarted
public void testRunStarted (String runName,
int testCount)Zgłasza rozpoczęcie sesji testowej.
| Parametry | |
|---|---|
runName |
String: nazwa sesji testowej |
testCount |
int: łączna liczba testów podczas sesji testowej |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber,
long startTime)Zgłasza rozpoczęcie sesji testowej.
| Parametry | |
|---|---|
runName |
String: nazwa sesji testowej |
testCount |
int: łączna liczba testów podczas sesji testowej |
attemptNumber |
int: numer zamówienia, który identyfikuje różne próby tego samego uruchomienia runName
wykonywanego wielokrotnie. Wartość attemptNumber jest indeksowana od zera i powinna zwiększać się za każdym razem, gdy następuje nowe uruchomienie. Na przykład jeśli test jest ponownie uruchamiany 3 razy, powinien mieć łącznie 4 uruchomienia pod tą samą nazwą runName, a wartość attemptNumber powinna wynosić od 0 do 3. |
startTime |
long: czas rozpoczęcia uruchomienia mierzony za pomocą System.currentTimeMillis() |
testRunStopped
public void testRunStopped (long elapsedTime)
Zgłasza zatrzymanie sesji testowej przed zakończeniem na prośbę użytkownika.
TODO: obecnie nieużywane, rozważ usunięcie
| Parametry | |
|---|---|
elapsedTime |
long: czas, który upłynął od ostatniego zgłoszenia przez urządzenie (w milisekundach) |
testSkipped
public void testSkipped (TestDescription test, SkipReason reason)
Wywoływana, gdy test jest pomijany i nie jest wykonywany z przyczyny, która zwykle nie jest oczekiwana. Te testy będą ponawiane, aby uzyskać prawidłowe wykonanie.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
reason |
SkipReason: SkipReason |
testStarted
public void testStarted (TestDescription test, long startTime)
Alternatywa dla testStarted(TestDescription), w której podajemy też datę rozpoczęcia testu, w połączeniu z testEnded(TestDescription,long,Map), aby uzyskać dokładny pomiar.
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
startTime |
long: czas rozpoczęcia testu mierzony za pomocą System.currentTimeMillis() |
testStarted
public void testStarted (TestDescription test)
Zgłasza rozpoczęcie pojedynczego elementu testowania. Jest to starszy interfejs; o ile to możliwe, używaj testStarted(TestDescription).
| Parametry | |
|---|---|
test |
TestDescription: identyfikuje test |
uploadStoragePath
public void uploadStoragePath (String resourceId,
String storagePath,
LogFile logFile)Przesyła ścieżkę do artefaktu testu AnTS do ResultDB.
Jest to tymczasowe rozwiązanie na potrzeby migracji z AnTS do ResultDB (więcej informacji znajdziesz na stronie go/convergence-tr). Ta metoda powinna być wywoływana przez moduł raportowania AnTS, gdy ścieżka przechowywania artefaktu stanie się dostępna.
Reporter AnTS gwarantuje, że wywoła tę metodę w przypadku każdego przesyłanego artefaktu. Ten reporter z kolei prześle wszystkie takie artefakty do ResultDB z prawidłowym powiązaniem z testem. Aby prawidłowo powiązać logi,musisz wcześniej wywołać funkcję logAssociation(String,LogFile) dla tego samego identyfikatora zasobu. Dzięki temu artefakt jest już śledzony. W przeciwnym razie artefakt zostanie powiązany z jednostką pracy najwyższego poziomu wywołania Tradefed.
Tej metody nie można wywoływać przed invocationStarted(IInvocationContext). Można go wywołać po invocationEnded(long) w przypadku wywołań zarządzanych przez system nadrzędny, ponieważ nie są one finalizowane przez ten moduł raportujący. Nie dotyczy to wywołań utworzonych lokalnie, które są finalizowane w invocationEnded(long).
TODO(b/464941055): usuń tę metodę, gdy będziemy mogli prawidłowo przenieść artefakty AnTS do ResultDB.
| Parametry | |
|---|---|
resourceId |
String: identyfikator zasobu artefaktu. |
storagePath |
String: ścieżka do artefaktu (np. /bigstore/). |
logFile |
LogFile: obiekt LogFile powiązany z artefaktem. |