BasePostProcessor
public
abstract
class
BasePostProcessor
extends Object
implements
IPostProcessor
java.lang.Object | |
↳ | com.android.tradefed.postprocessor.BasePostProcessor |
La classe IPostProcessor
di base che ogni implementazione deve estendere. Assicurati che i metodi di post-elaborazione vengano chiamati prima dei report sui risultati finali.
Riepilogo
Costruttori pubblici | |
---|---|
BasePostProcessor()
|
Metodi pubblici | |
---|---|
final
ITestInvocationListener
|
init(ITestInvocationListener listener)
Passaggio di inizializzazione del post-processor. |
final
void
|
invocationEnded(long elapsedTime)
Segnala che la chiamata è stata terminata, correttamente o a causa di una condizione di errore. |
final
void
|
invocationFailed(FailureDescription failure)
Segnala un'invocazione incompleta a causa di una condizione di errore. |
final
void
|
invocationFailed(Throwable cause)
Segnala un'invocazione incompleta a causa di una condizione di errore. |
void
|
invocationSkipped(SkipReason reason)
Segnala un'invocazione come ignorata |
final
void
|
invocationStarted(IInvocationContext context)
Listener di chiamata per il trasferimento |
final
boolean
|
isDisabled()
Restituisce True se l'intero oggetto è disabilitato (salta la configurazione e lo smantellamento). |
final
void
|
logAssociation(String dataName, LogFile logFile)
In alcuni casi, il log deve essere strettamente associato a un test case, ma non è possibile farlo nel callback Aggiorna l'associazione da log a test. |
|
processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics,
Implementa questo metodo per aggregare le metriche e i log in tutti i test. |
abstract
|
processRunMetricsAndLogs(
Implementa questo metodo per generare un insieme di nuove metriche dalle metriche e dai log esistenti. |
|
processTestMetricsAndLogs(TestDescription testDescription,
Implementa questo metodo per eseguire il post-trattamento delle metriche e dei log di ogni test. |
final
void
|
setLogSaver(ILogSaver logSaver)
Imposta |
void
|
setUp()
Sostituisci questo metodo nei post-processor secondari per l'inizializzazione prima dell'esecuzione del test. |
final
void
|
testAssumptionFailure(TestDescription test, String trace)
Richiamato quando un test atomico segnala che assume una condizione falsa |
final
void
|
testAssumptionFailure(TestDescription test, FailureDescription failure)
Richiamato quando un test atomico segnala che assume una condizione falsa |
final
void
|
testEnded(TestDescription test, long endTime,
Alternativa a |
final
void
|
testEnded(TestDescription test,
Segnala il termine dell'esecuzione di un singolo test case. |
final
void
|
testFailed(TestDescription test, FailureDescription failure)
Segnala l'errore di un singolo test case. |
final
void
|
testFailed(TestDescription test, String trace)
Segnala l'errore di un singolo test case. |
final
void
|
testIgnored(TestDescription test)
Viene chiamato quando un test non verrà eseguito, in genere perché un metodo di test è annotato con org.junit.Ignore. |
final
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
Utilizza questo metodo per registrare un file dall'implementazione di PostProcessor. |
final
void
|
testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)
Richiamato quando il log di test viene salvato. |
final
void
|
testModuleEnded()
Segnala la fine dell'esecuzione di un modulo. |
final
void
|
testModuleStarted(IInvocationContext moduleContext)
Segnala l'inizio dell'esecuzione di un modulo. |
final
void
|
testRunEnded(long elapsedTime,
Fine dell'esecuzione del test nei report. |
final
void
|
testRunFailed(FailureDescription failure)
L'esecuzione del test dei report non è riuscita a causa di un errore descritto da |
final
void
|
testRunFailed(String errorMessage)
L'esecuzione del test dei report non è riuscita a causa di un errore irreversibile. |
final
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
Segnala l'inizio di un'esecuzione del test. |
final
void
|
testRunStarted(String runName, int testCount)
Callback esecuzione di test |
final
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
Segnala l'inizio di un'esecuzione del test. |
final
void
|
testRunStopped(long elapsedTime)
L'esecuzione del test dei report è stata interrotta prima del completamento a causa di una richiesta dell'utente. |
final
void
|
testSkipped(TestDescription test, SkipReason reason)
Richiamato quando un test viene ignorato e non è stato eseguito per un motivo solitamente non previsto. |
final
void
|
testStarted(TestDescription test, long startTime)
In alternativa a |
final
void
|
testStarted(TestDescription test)
Callback degli scenari di test |
Metodi protetti | |
---|---|
void
|
cleanUp()
|
MetricMeasurement.DataType
|
getMetricType()
Sostituisci questo metodo per modificare il tipo di metrica, se necessario. |
String
|
getRunName()
|
Costruttori pubblici
BasePostProcessor
public BasePostProcessor ()
Metodi pubblici
init
public final ITestInvocationListener init (ITestInvocationListener listener)
Passaggio di inizializzazione del post-processore. Assicurati di essere chiamato prima dei callback dei test.
Parametri | |
---|---|
listener |
ITestInvocationListener |
Ritorni | |
---|---|
ITestInvocationListener |
invocationEnded
public final void invocationEnded (long elapsedTime)
Segnala che l'invocazione è terminata, correttamente o a causa di una condizione di errore.
Verrà chiamato automaticamente dal framework TradeFederation.
Parametri | |
---|---|
elapsedTime |
long : il tempo trascorso dall'invocazione in ms |
invocationFailed
public final void invocationFailed (FailureDescription failure)
Segnala una chiamata incompleta a causa di alcune condizioni di errore.
Verrà chiamato automaticamente dal framework TradeFederation.
Parametri | |
---|---|
failure |
FailureDescription : il FailureDescription che descrive la causa dell'errore |
invocationFailed
public final void invocationFailed (Throwable cause)
Segnala un'invocazione incompleta a causa di una condizione di errore.
Verrà chiamato automaticamente dal framework TradeFederation.
Parametri | |
---|---|
cause |
Throwable : la causa Throwable dell'errore |
invocationSkipped
public void invocationSkipped (SkipReason reason)
Segnala un'invocazione come ignorata
Parametri | |
---|---|
reason |
SkipReason |
invocationStarted
public final void invocationStarted (IInvocationContext context)
Listener di chiamata per l'inoltro
Parametri | |
---|---|
context |
IInvocationContext : informazioni sull'invocazione |
non attivo
public final boolean isDisabled ()
Restituisce True se l'intero oggetto è disabilitato (salta la configurazione e lo smantellamento). Falso negli altri casi.
Ritorni | |
---|---|
boolean |
logAssociation
public final void logAssociation (String dataName, LogFile logFile)
In alcuni casi, il log deve essere strettamente associato a uno scenario di test, ma non è possibile farlo con il callback testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile)
diretto. Pertanto, questo callback consente di fornire esplicitamente un'associazione efficace.
Aggiorna l'associazione del log al test. Se questo metodo viene chiamato durante un test, il log appartiene al test; in caso contrario, si tratta di un log di esecuzione.
Parametri | |
---|---|
dataName |
String : il nome dei dati |
logFile |
LogFile : il LogFile registrato in precedenza e da associare al
test case. |
processiAllTestMetricsAndLogs
publicprocessAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)
Implementa questo metodo per aggregare le metriche e i log in tutti i test. Le metriche generate da questo metodo verranno registrate come metriche di esecuzione. Devono essere riportate solo le metriche appena generate e con un nome chiave univoco (non sono consentite collisioni con le chiavi esistenti).
Parametri | |
---|---|
allTestMetrics |
ListMultimap : un oggetto HashMultimap che memorizza le metriche di ogni test raggruppate per nomi. |
allTestLogs |
: una mappa che memorizza la mappa dei file di log di ogni test in base ai relativi nomi di dati, utilizzando TestDescription di ogni test come chiavi. |
Ritorni | |
---|---|
|
L'insieme di metriche appena generate da tutte le metriche di test. |
processRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( rawMetrics, runLogs)
Implementa questo metodo per generare un insieme di nuove metriche dalle metriche e dai log esistenti. Devono essere restituite solo le metriche appena generate e con un nome chiave univoco (non sono consentite collisioni con chiavi esistenti).
Parametri | |
---|---|
rawMetrics |
: l'insieme di metriche non elaborate disponibili per l'esecuzione. |
runLogs |
: l'insieme di file di log per l'esecuzione del test. |
Ritorni | |
---|---|
|
L'insieme di metriche appena generate dalle metriche di esecuzione. |
processTestMetricsAndLogs
publicprocessTestMetricsAndLogs (TestDescription testDescription, testMetrics, testLogs)
Implementa questo metodo per caricare metriche e log del processo di ogni test. Devono essere restituite solo le metriche generate di recente e con un nome chiave univoco (non sono consentite collisioni con le chiavi esistenti).
Parametri | |
---|---|
testDescription |
TestDescription : l'oggetto TestDescription che descrive il test. |
testMetrics |
: l'insieme di metriche del test. |
testLogs |
: l'insieme di file registrati durante il test. |
Ritorni | |
---|---|
|
L'insieme di metriche appena generate dalle metriche di test. |
setLogSaver
public final void setLogSaver (ILogSaver logSaver)
Imposta ILogSaver
per consentire all'implementatore di salvare i file.
Parametri | |
---|---|
logSaver |
ILogSaver : il ILogSaver |
setUp
public void setUp ()
Sostituisci questo metodo nei post-processor secondari per l'inizializzazione prima dell'esecuzione del test.
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, String trace)
Viene chiamato quando un test atomico segnala che presuppone una condizione falsa
Parametri | |
---|---|
test |
TestDescription : identifica il test |
trace |
String : analisi dello stack dell'errore |
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, FailureDescription failure)
Viene chiamato quando un test atomico segnala che presuppone una condizione falsa
Parametri | |
---|---|
test |
TestDescription : identifica il test |
failure |
FailureDescription : FailureDescription che descrive l'errore e il relativo contesto. |
testEnded
public final void testEnded (TestDescription test, long endTime,testMetrics)
Alternativa a ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map))
in cui possiamo specificare direttamente l'ora di fine. Combina con testStarted(com.android.tradefed.result.TestDescription, long)
per una misurazione accurata.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
endTime |
long : l'ora di fine del test, misurata tramite System.currentTimeMillis() |
testMetrics |
: un ERROR(/Map) delle metriche emesse |
testEnded
public final void testEnded (TestDescription test,testMetrics)
Segnala il termine dell'esecuzione di un singolo test case.
Se testFailed(TestDescription, FailureDescription)
non è stato invocato, questo test è stato superato. Restituisce anche eventuali metriche chiave/valore che potrebbero essere state emesse durante l'esecuzione del test case.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
testMetrics |
: una percentuale pari a ERROR(/Map) delle metriche emesse |
testNon riuscito
public final void testFailed (TestDescription test, FailureDescription failure)
Segnala l'errore di un singolo scenario di test.
Verrà chiamato tra testStarted e testEnded.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
failure |
FailureDescription : FailureDescription che descrive l'errore e il relativo contesto. |
testNon riuscito
public final void testFailed (TestDescription test, String trace)
Segnala l'errore di un singolo scenario di test.
Verrà chiamato tra testStarted e testEnded.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
trace |
String : analisi dello stack dell'errore |
testIgnored
public final void testIgnored (TestDescription test)
Viene chiamato quando un test non verrà eseguito, in genere perché un metodo di test è annotato con org.junit.Ignore.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
testLog
public final void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Utilizza questo metodo per registrare un file dall'implementazione di PostProcessor.
Parametri | |
---|---|
dataName |
String : un nome descrittivo String dei dati, ad esempio "device_logcat". Nota: dataName potrebbe non essere univoco per ogni chiamata. Ad esempio, gli implementatori devono essere in grado di gestire più chiamate con lo stesso dataName |
dataType |
LogDataType : il LogDataType dei dati |
dataStream |
InputStreamSource : il InputStreamSource dei dati. Gli implementatori devono chiamare
createInputStream per iniziare a leggere i dati e assicurarsi di chiudere
InputStream risultante al termine. I chiamanti devono garantire che l'origine dei dati rimanga presente e accessibile fino al completamento del metodo testLog. |
testLogSaved
public final void testLogSaved (String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)
Viene chiamato quando il log del test viene salvato.
Deve essere utilizzato al posto di ITestInvocationListener#testLog(String, LogDataType,
InputStreamSource)
.
Parametri | |
---|---|
dataName |
String : un nome descrittivo String dei dati, ad esempio "device_logcat". Nota: dataName potrebbe non essere univoco per ogni chiamata. Ad esempio, gli implementatori devono essere in grado di gestire più chiamate con lo stesso dataName |
dataType |
LogDataType : il LogDataType dei dati |
dataStream |
InputStreamSource : il InputStreamSource dei dati. Gli implementatori devono chiamare
createInputStream per iniziare a leggere i dati e assicurarsi di chiudere
InputStream risultante al termine. |
logFile |
LogFile : il LogFile contenente i metadati del file salvato. |
testModuleEnded
public final void testModuleEnded ()
Segnala la fine dell'esecuzione di un modulo.
testModuleStarted
public final void testModuleStarted (IInvocationContext moduleContext)
Segnala l'inizio dell'esecuzione di un modulo. Questo callback è associato a testModuleEnded()
ed è facoltativo nella sequenza. Viene utilizzato solo durante un'esecuzione che utilizza i moduli: runner basati su suite.
Parametri | |
---|---|
moduleContext |
IInvocationContext : il IInvocationContext del modulo. |
testRunEnded
public final void testRunEnded (long elapsedTime,runMetrics)
Fine dell'esecuzione del test nei report.
Parametri | |
---|---|
elapsedTime |
long : tempo trascorso segnalato dal dispositivo, in millisecondi |
runMetrics |
: coppie chiave-valore registrate al termine di un'esecuzione del test |
testRunFailed
public final void testRunFailed (FailureDescription failure)
L'esecuzione del test dei report non è riuscita a causa di un errore descritto da FailureDescription
.
Parametri | |
---|---|
failure |
FailureDescription : FailureDescription che descrive l'errore e il relativo contesto. |
testRunNon riuscito
public final void testRunFailed (String errorMessage)
L'esecuzione del test dei report non è riuscita a causa di un errore fatale.
Parametri | |
---|---|
errorMessage |
String : String che descrive il motivo dell'errore di esecuzione. |
testRunStarted
public final void testRunStarted (String runName, int testCount, int attemptNumber)
Segnala l'inizio di un'esecuzione del test.
Parametri | |
---|---|
runName |
String : il nome dell'esecuzione del test |
testCount |
int : numero totale di test nell'esecuzione di test |
attemptNumber |
int : numero ordine che identifica i diversi tentativi eseguiti dallo stesso runName
più volte. Il numero di tentativi è indicizzato da 0 e deve aumentare ogni volta che viene eseguita una nuova esecuzione. Ad esempio, un test viene riavviato granularmente 3 volte, deve avere 4 esecuzioni totali con lo stesso nome esecuzione e il numero di tentativi va da 0 a 3. |
testRunStarted
public final void testRunStarted (String runName, int testCount)
Callback di esecuzione del test
Parametri | |
---|---|
runName |
String : il nome dell'esecuzione del test |
testCount |
int : numero totale di test nell'esecuzione di test |
testRunStarted
public final void testRunStarted (String runName, int testCount, int attemptNumber, long startTime)
Segnala l'inizio di un'esecuzione del test.
Parametri | |
---|---|
runName |
String : il nome dell'esecuzione del test |
testCount |
int : numero totale di test nell'esecuzione di test |
attemptNumber |
int : numero d'ordine, che identifica i diversi tentativi dello stesso runName
eseguiti più volte. Il numero tentato è indicizzato a 0 e deve aumentare ogni volta che si verifica una nuova esecuzione. Ad esempio, un test viene ripetuto tre volte in modo granulare, dovrebbe avere 4 esecuzioni totali con lo stesso nome runName e il numero tentativo è compreso tra 0 e 3. |
startTime |
long : l'ora di inizio dell'esecuzione, misurata tramite System.currentTimeMillis() |
testRunArrestato
public final void testRunStopped (long elapsedTime)
L'esecuzione del test dei report è stata interrotta prima del completamento a causa di una richiesta dell'utente.
TODO: currently unused, consider removing
Parametri | |
---|---|
elapsedTime |
long : tempo trascorso segnalato dal dispositivo, in millisecondi |
testSkipped
public final void testSkipped (TestDescription test, SkipReason reason)
Viene chiamato quando un test viene saltato e non viene eseguito per un motivo in genere imprevisto. Verrà tentato di ripetere questi test per ottenere un'esecuzione corretta.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
reason |
SkipReason : SkipReason |
testStarted
public final void testStarted (TestDescription test, long startTime)
Alternativa a testStarted(com.android.tradefed.result.TestDescription)
in cui viene specificato anche quando è stato avviato il test, combinata con ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))
per una misurazione accurata.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
startTime |
long : l'ora di inizio del test, misurata tramite System.currentTimeMillis() |
testIniziato
public final void testStarted (TestDescription test)
Callback degli scenari di test
Parametri | |
---|---|
test |
TestDescription : identifica il test |
Metodi protetti
cleanUp
protected void cleanUp ()
getMetricType
protected MetricMeasurement.DataType getMetricType ()
Sostituisci questo metodo per modificare il tipo di metrica, se necessario. Per impostazione predefinita, la metrica è impostata sul tipo elaborato.
Ritorni | |
---|---|
MetricMeasurement.DataType |
getRunName
protected String getRunName ()
Ritorni | |
---|---|
String |