ShardMainResultForwarder

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
com.android.tradefed.result.ResultForwarder
com.android.tradefed.invoker.ShardMainResultForwarder


Ein ResultForwarder , der die Ergebnisse von Sharding-Testaufrufen kombiniert. Es meldet den Abschluss des Aufrufs erst dann an die Listener, wenn alle fragmentierten Aufrufe abgeschlossen sind.

Diese Klasse ist nicht threadsicher. Es wird erwartet, dass Clients diese Klasse beim Senden von Testergebnissen sperren, um zu verhindern, dass Aufrufrückrufe außerhalb der Reihenfolge aufgerufen werden.

Zusammenfassung

Öffentliche Konstrukteure

ShardMainResultForwarder ( listeners, int expectedShards) ShardMainResultForwarder ( listeners, int expectedShards)

Erstellen Sie einen ShardMainResultForwarder .

Öffentliche Methoden

void invocationEnded (long elapsedTime)

Meldet, dass der Aufruf erfolgreich oder aufgrund einer Fehlerbedingung beendet wurde.

void invocationEnded (long elapsedTime, IInvocationContext context)

Ausführlicherer Rückruf, um zu unterscheiden, welcher Shard fertig ist.

void invocationFailed ( FailureDescription failure)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

void invocationFailed (Throwable cause)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

void invocationStarted ( IInvocationContext context)

Meldet den Start des Testaufrufs.

void logAssociation (String dataName, LogFile logFile)

In einigen Fällen muss das Protokoll stark mit einem Testfall verknüpft werden, aber die Möglichkeit dazu besteht direkt testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) Callback ist nicht möglich.

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

Leiten Sie das testLog nur weiter, anstatt es vorher zu speichern.

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

Wird aufgerufen, wenn das Testprotokoll gespeichert wird.

Öffentliche Konstrukteure

ShardMainResultForwarder

public ShardMainResultForwarder ( listeners, 
                int expectedShards)

Erstellen Sie einen ShardMainResultForwarder .

Parameter
listeners : die Liste von ITestInvocationListener , an die Ergebnisse weitergeleitet werden, wenn alle Shards abgeschlossen sind

expectedShards int : die Anzahl der Shards

Öffentliche Methoden

AufrufBeendet

public void invocationEnded (long elapsedTime)

Meldet, dass der Aufruf erfolgreich oder aufgrund einer Fehlerbedingung beendet wurde.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
elapsedTime long : die verstrichene Zeit des Aufrufs in ms

AufrufBeendet

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

Ausführlicherer Rückruf, um zu unterscheiden, welcher Shard fertig ist.

Parameter
elapsedTime long

context IInvocationContext

Aufruf fehlgeschlagen

public void invocationFailed (FailureDescription failure)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
failure FailureDescription : die FailureDescription , die die Ursache des Fehlers beschreibt

Aufruf fehlgeschlagen

public void invocationFailed (Throwable cause)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
cause Throwable : Die Throwable Ursache des Fehlers

AufrufStarted

public void invocationStarted (IInvocationContext context)

Meldet den Start des Testaufrufs.

Wird automatisch vom TradeFederation-Framework aufgerufen. Melder müssen diese Methode überschreiben, um die Meldung mehrerer Geräte zu unterstützen.

Parameter
context IInvocationContext : Informationen über den Aufruf

logAssoziation

public void logAssociation (String dataName, 
                LogFile logFile)

In einigen Fällen muss das Protokoll stark mit einem Testfall verknüpft werden, aber die Möglichkeit dazu besteht direkt testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) Callback ist nicht möglich. Somit ermöglicht dieser Rückruf die explizite Bereitstellung einer starken Assoziation.

Parameter
dataName String : Der Name der Daten

logFile LogFile : die zuvor protokollierte LogFile , die dem Testfall zugeordnet werden soll.

testLogForward

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

Leiten Sie das testLog nur weiter, anstatt es vorher zu speichern.

Parameter
dataName String

dataType LogDataType

dataStream InputStreamSource

testLogGespeichert

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

Parameter
dataName String : ein String , der den Namen der Daten beschreibt. zB "device_logcat". Hinweis dataName darf pro Aufruf nicht eindeutig sein. dh Implementierer müssen in der Lage sein, mehrere Aufrufe mit demselben dataName zu verarbeiten

dataType LogDataType : der LogDataType der Daten

dataStream InputStreamSource : die InputStreamSource der Daten. Implementierer sollten createInputStream aufrufen, um mit dem Lesen der Daten zu beginnen, und sicherstellen, dass der resultierende InputStream nach Abschluss geschlossen wird.

logFile LogFile : das LogFile , das die Metadaten der gespeicherten Datei enthält.