ISandbox

public interface ISandbox

com.android.tradefed.sandbox.ISandbox


Schnittstelle zur Definition einer Sandbox, die zum Ausführen eines Aufrufs verwendet werden kann.

Zusammenfassung

Öffentliche Methoden

abstract String createClasspath(File workingDir)

Erstellen Sie einen Klassenpfad basierend auf der Umgebung und dem Arbeitsverzeichnis, das von getTradefedSandboxEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, String[]) zurückgegeben wird.

abstract IConfiguration createThinLauncherConfig(String[] args, IKeyStoreClient keyStoreClient, IRunUtil runUtil, File globalConfig)

Spezieller Modus, der von der Hauptausführung getrennt ist: Wenn eine Konfiguration in mit dem übergeordneten Element verwenden wir einen Thin Launcher, bei dem wir versuchen, die Sandbox mit bekannte Informationen und füllen Sie das Arbeitsverzeichnis, um die Konfiguration vollständig im versioniertes Verzeichnis.

default discoverTests(IInvocationContext context, IConfiguration configuration)

Ein Unterschritt von prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener), der Tests erkennt, wenn SandboxOptions.shouldUseTestDiscovery() aktiviert ist.

default discoverTests(IInvocationContext context, IConfiguration configuration, ITestLogger logger)
default IFolderBuildInfo fetchSandboxExtraArtifacts(IInvocationContext context, IConfiguration configuration, String[] args)

Unterschritt von prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener), mit dem zusätzliche Dateien abgerufen werden, die für die Sandbox erforderlich sind.

default File getTradefedSandboxEnvironment(IInvocationContext context, IConfiguration nonVersionedConfig, String[] args)

Gibt die Sandbox-Umgebungs-TF zurück, die basierend auf den Befehlszeilenargumenten verwendet werden soll.

default File getTradefedSandboxEnvironment(IInvocationContext context, IConfiguration nonVersionedConfig, ITestLogger logger, String[] args)
abstract Exception prepareEnvironment(IInvocationContext context, IConfiguration configuration, ITestInvocationListener listener)

Bereiten Sie die Umgebung für die ordnungsgemäße Ausführung der Sandbox vor.

abstract CommandResult run(TestInformation info, IConfiguration configuration, ITestLogger logger)

Führen Sie die Sandbox mit der festgelegten Umgebung aus.

abstract void tearDown()

Bereinigen Sie alle Status, Dateien oder Umgebungen, die möglicherweise geändert wurden.

Öffentliche Methoden

Klassenpfad erstellen

public abstract String createClasspath (File workingDir)

Erstellen Sie einen Klassenpfad basierend auf der Umgebung und dem Arbeitsverzeichnis, das von getTradefedSandboxEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, String[]) zurückgegeben wird.

Parameter
workingDir File: Das aktuelle Arbeitsverzeichnis für die Sandbox.

Returns
String Der zu verwendende Klassenpfad.

Ausgabe
ConfigurationException

createThinLauncherConfig

public abstract IConfiguration createThinLauncherConfig (String[] args, 
                IKeyStoreClient keyStoreClient, 
                IRunUtil runUtil, 
                File globalConfig)

Spezieller Modus, der von der Hauptausführung getrennt ist: Wenn eine Konfiguration in mit dem übergeordneten Element verwenden wir einen Thin Launcher, bei dem wir versuchen, die Sandbox mit bekannte Informationen und füllen Sie das Arbeitsverzeichnis, um die Konfiguration vollständig im versioniertes Verzeichnis.

Parameter
args String: Die ursprünglichen Befehlszeilenargumente.

keyStoreClient IKeyStoreClient: Der aktuelle Schlüsselspeicher-Client, der zum Erstellen von Konfigurationen verwendet werden soll.

runUtil IRunUtil: Der aktuelle IRunUtil zum Ausführen von Hostbefehlen.

globalConfig File: Die globale Konfiguration, die zum Ausführen von Unterprozessen von TF verwendet wird.

Returns
IConfiguration Eine Datei, die auf die Konfigurations-XML von TF für NON_VERSIONED-Objekte verweist. Rückgaben null, wenn keine Konfiguration für einen flachen Launcher erstellt werden konnte.

DiscoveryTests

public  discoverTests (IInvocationContext context, 
                IConfiguration configuration)

Ein Unterschritt von prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener), der Tests erkennt, wenn SandboxOptions.shouldUseTestDiscovery() aktiviert ist.

Parameter
context IInvocationContext: der aktuelle Aufruf von IInvocationContext.

configuration IConfiguration: IConfiguration für den auszuführenden Befehl.

Returns
Die Zuordnung der erkannten Tests oder null, wenn sie nicht unterstützt wird oder fehlgeschlagen ist.

DiscoveryTests

public  discoverTests (IInvocationContext context, 
                IConfiguration configuration, 
                ITestLogger logger)

Parameter
context IInvocationContext

configuration IConfiguration

logger ITestLogger

Returns

FetchSandboxExtraArtifacts

public IFolderBuildInfo fetchSandboxExtraArtifacts (IInvocationContext context, 
                IConfiguration configuration, 
                String[] args)

Unterschritt von prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener), mit dem zusätzliche Dateien abgerufen werden, die für die Sandbox erforderlich sind.

Parameter
context IInvocationContext: der aktuelle Aufruf von IInvocationContext.

configuration IConfiguration: IConfiguration für den auszuführenden Befehl.

args String: die Befehlszeilenargumente.

Returns
IFolderBuildInfo den abgerufenen Build für die zusätzlichen Dateien, die in einer Sandbox ausgeführt werden.

Ausgabe
com.android.tradefed.build.BuildRetrievalError
com.android.tradefed.config.ConfigurationException
IOException
BuildRetrievalError
ConfigurationException

getTradefedSandboxEnvironment

public File getTradefedSandboxEnvironment (IInvocationContext context, 
                IConfiguration nonVersionedConfig, 
                String[] args)

Gibt die Sandbox-Umgebungs-TF zurück, die basierend auf den Befehlszeilenargumenten verwendet werden soll.

Parameter
context IInvocationContext: IInvocationContext des übergeordneten Elements.

nonVersionedConfig IConfiguration: die IConfiguration, die die nicht versionierten Objekte darstellt.

args String: die Befehlszeilenargumente.

Returns
File Das Verzeichnis ERROR(/File), das die TF-Sandbox-Umgebungs-JAR-Dateien enthält.

getTradefedSandboxEnvironment

public File getTradefedSandboxEnvironment (IInvocationContext context, 
                IConfiguration nonVersionedConfig, 
                ITestLogger logger, 
                String[] args)

Parameter
context IInvocationContext

nonVersionedConfig IConfiguration

logger ITestLogger

args String

Returns
File

Umgebung vorbereiten

public abstract Exception prepareEnvironment (IInvocationContext context, 
                IConfiguration configuration, 
                ITestInvocationListener listener)

Bereiten Sie die Umgebung für die ordnungsgemäße Ausführung der Sandbox vor.

Parameter
context IInvocationContext: der aktuelle Aufruf von IInvocationContext.

configuration IConfiguration: IConfiguration für den auszuführenden Befehl.

listener ITestInvocationListener: der aktuelle Aufruf ITestInvocationListener, bei dem die endgültigen Ergebnisse in einer Pipe enthalten sein.

Returns
Exception Eine Exception, die den Fehler enthält. oder Null, wenn der Vorgang erfolgreich war.

Homerun

public abstract CommandResult run (TestInformation info, 
                IConfiguration configuration, 
                ITestLogger logger)

Führen Sie die Sandbox mit der festgelegten Umgebung aus.

Parameter
info TestInformation: der TestInformation, der den Aufruf beschreibt

configuration IConfiguration: IConfiguration für den auszuführenden Befehl.

logger ITestLogger: ein ITestLogger, in dem wir Dateien protokollieren können.

Returns
CommandResult CommandResult mit dem Status der Sandbox-Ausführung und den Logs.

Teardown

public abstract void tearDown ()

Bereinigen Sie alle Status, Dateien oder Umgebungen, die möglicherweise geändert wurden.