XmlResultReporter

public class XmlResultReporter
extends CollectingTestListener implements ILogSaverListener

java.lang.Object
com.android.tradefed.result.CollectingTestListener
  com.android.tradefed.result.XmlResultReporter


Schreibt JUnit-Ergebnisse in XML-Dateien in einem Format, das mit dem XMLJUnitResultFormatter von Ant übereinstimmt.

Im Gegensatz zum Formatierer von Ant wird mit dieser Klasse die Ausführungszeit von Tests nicht gemeldet.

Erfasst alle Testinformationen im Arbeitsspeicher und speichert sie nach Abschluss des Aufrufs in einer Datei.

Portiert vom Dalvik-Runner XmlReportPrinter.

Ergebnisdateien werden im Pfad gespeichert, der über [--output-file-path]/[build_id] erstellt wird.

Zusammenfassung

Öffentliche Konstruktoren

XmlResultReporter()

Öffentliche Methoden

void invocationEnded(long elapsedTime)

Meldet, dass der Aufruf beendet wurde, unabhängig davon, ob er erfolgreich war oder aufgrund eines Fehlers.

void setLogSaver(ILogSaver logSaver)

Legt den ILogSaver fest, damit der Implementierer Dateien speichern kann.

void testFailed(TestDescription test, String trace)

Meldet den Fehler eines einzelnen Testfalls.

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

Stellt die zugehörigen Protokoll- oder Debugdaten aus dem Testaufruf bereit.

void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

Wird aufgerufen, wenn das Testprotokoll gespeichert wird.

Öffentliche Konstruktoren

XmlResultReporter

public XmlResultReporter ()

Öffentliche Methoden

invocationEnded

public void invocationEnded (long elapsedTime)

Meldet, dass der Aufruf beendet wurde, unabhängig davon, ob er erfolgreich war oder aufgrund eines Fehlers.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
elapsedTime long: Die verstrichene Zeit des Aufrufs in Millisekunden

setLogSaver

public void setLogSaver (ILogSaver logSaver)

Legt den ILogSaver fest, damit der Implementierer Dateien speichern kann.

Parameter
logSaver ILogSaver: Der ILogSaver

testFailed

public void testFailed (TestDescription test, 
                String trace)

Meldet den Fehler eines einzelnen Testfalls.

Wird zwischen testStarted und testEnded aufgerufen.

Parameter
test TestDescription: Gibt den Test an

trace String: Stacktrace des Fehlers

testLog

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

Stellt die zugehörigen Protokoll- oder Debugdaten aus dem Testaufruf bereit.

Muss vor ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) oder ERROR(/ITestInvocationListener#invocationEnded(long)) aufgerufen werden.

Das TradeFederation-Framework ruft diese Methode automatisch auf und stellt das Hostprotokoll und gegebenenfalls das Geräte-Logcat bereit.

Parameter
dataName String: Ein beschreibender String-Name der Daten, z. B. „device_logcat“. Hinweis: „dataName“ ist möglicherweise nicht eindeutig pro Aufruf. Implementierer müssen also mehrere Aufrufe mit demselben „dataName“ verarbeiten können.

dataType LogDataType: das LogDataType der Daten

dataStream InputStreamSource: die InputStreamSource der Daten. Implementierer sollten „createInputStream“ aufrufen, um die Daten zu lesen, und den resultierenden InputStream nach Abschluss schließen. Aufrufer müssen dafür sorgen, dass die Datenquelle bis zum Abschluss der Methode „testLog“ vorhanden und zugänglich bleibt.

testLogSaved

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

Wird aufgerufen, wenn das Testprotokoll gespeichert wird.

Sollte anstelle von ITestInvocationListener.testLog(String,LogDataType,InputStreamSource) verwendet werden.

Parameter
dataName String: Ein beschreibender String-Name der Daten, z. B. „device_logcat“. Hinweis: „dataName“ ist möglicherweise nicht eindeutig pro Aufruf. Implementierer müssen also mehrere Aufrufe mit demselben „dataName“ verarbeiten können.

dataType LogDataType: das LogDataType der Daten

dataStream InputStreamSource: die InputStreamSource der Daten. Implementierer sollten „createInputStream“ aufrufen, um die Daten zu lesen, und den resultierenden InputStream nach Abschluss schließen.

logFile LogFile: die LogFile mit den Metadaten der gespeicherten Datei.