Crea un autore della segnalazione dei risultati

In questa pagina vengono descritte le nozioni di base su come implementare un nuovo strumento di segnalazione dei risultati e configurarla per un test.

Interfaccia principale

Per definire un nuovo reporter dei risultati in Tradefed, una classe deve implementare il ITestInvocationListener che consente di ricevere e gestire diverse fasi chiamata:

  • invocationStarted
  • invocationEnded
  • invocationFailed

I reporter dei risultati gestiscono anche le diverse fasi di ogni esecuzione di test:

  • testRunStarted
  • testStarted
  • testFailed o testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

Alla luce di tutti questi eventi, esistono due tipi principali di report sui risultati:

  • Ti interessa solo riportare i risultati finali completi.
  • Intervieni sui risultati parziali.

Reporter dei risultati che riporta i risultati completi finali

Questo è il caso più comune quando si tratta di interagire con un che riceve i risultati. Il giornalista riceve e accumula semplicemente i risultati e li invia tutti su invocationEnded all'endpoint dei risultati.

Consigliamo invece ai reporter di estendere la CollectingTestListener dell'interfaccia di base per evitare di dover implementare nuovamente fino al giorno invocationEnded.

Reporter dei risultati che segnala risultati parziali

Questo tipo viene solitamente utilizzato per un approccio in modalità flusso dei risultati, vengono ricevuti e inviati immediatamente ad altri posti. Ad esempio, un reporter che registra i risultati nella console sarebbe di questo tipo.

Questo tipo di gestione è specifica per gli eventi, pertanto, generalmente l'implementazione dell'interfaccia di base è consigliata.

Configurazione XML

Il tag dell'oggetto è result_reporter. Ad esempio:

<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
    <option name="suppress-passed-tests" value="true"/>
</result_reporter>