IsolatedHostTest

public class IsolatedHostTest
extends Object implements IBuildReceiver, IConfigurationReceiver, IRemoteTest, IShardableTest, ITestAnnotationFilterReceiver, ITestCollector, ITestFilterReceiver

java.lang.Object
   ↳ com.android.tradefed.testtype.IsolatedHostTest


Implementa un runner TradeFed che utilizza un sottoprocesso per eseguire i test in un ambiente a bassa dipendenza anziché eseguirli nel processo principale.

Questo runner presuppone che tutti i file JAR configurati si trovino nella stessa directory di test e avvia il sottoprocesso in quella directory. Poiché deve scegliere una directory di lavoro per il sottoprocesso e molti test traggono vantaggio dal fatto che questa directory sia la directory di test, questo era il miglior compromesso disponibile.

Riepilogo

Costruttori pubblici

IsolatedHostTest()

Metodi pubblici

void addAllExcludeAnnotation(Set<String> notAnnotations)

Aggiunge un Set di annotazioni da escludere se un test è contrassegnato con questo valore.

void addAllExcludeFilters(Set<String> filters)

Aggiunge il Set dei filtri dei test da escludere.

void addAllIncludeAnnotation(Set<String> annotations)

Aggiunge un Set di annotazioni da includere se un test è contrassegnato con questo valore.

void addAllIncludeFilters(Set<String> filters)

Aggiunge il Set dei filtri dei test da includere.

void addExcludeAnnotation(String notAnnotation)

Aggiunge un'annotazione da escludere se un test è contrassegnato con questa annotazione.

void addExcludeFilter(String filter)

Aggiunge un filtro per i test da escludere.

void addIncludeAnnotation(String annotation)

Aggiunge un'annotazione da includere se un test è contrassegnato.

void addIncludeFilter(String filter)

Aggiunge un filtro per i test da includere.

void clearExcludeAnnotations()

Elimina tutte le annotazioni di esclusione attualmente monitorate.

void clearExcludeFilters()

Elimina tutti i filtri di esclusione attualmente monitorati.

void clearIncludeAnnotations()

Elimina tutte le annotazioni di inclusione attualmente monitorate.

void clearIncludeFilters()

Elimina tutti i filtri di inclusione attualmente monitorati.

String compileClassPath()

Crea un classpath per il sottoprocesso che include i file JAR necessari per eseguire i test

List<String> compileCommandArgs(String classpath, File artifactsDir)

Assembla gli argomenti del comando per eseguire il runner del sottoprocesso.

void deleteTempFiles()
File getCoverageExecFile()
Set<String> getExcludeAnnotations()

Restituisce l'Set corrente delle annotazioni da escludere.

Set<String> getExcludeFilters()

Restituisce l'attuale Set dei filtri di esclusione.

Set<String> getIncludeAnnotations()

Restituisce l'Set corrente delle annotazioni da includere.

Set<String> getIncludeFilters()

Restituisce l'Set corrente dei filtri di inclusione.

void run(TestInformation testInfo, ITestInvocationListener listener)

Esegue i test e comunica il risultato al listener.

void setBuild(IBuildInfo build)

void setCollectTestsOnly(boolean shouldCollectTest)

Attiva o disattiva la modalità di raccolta dei test

void setConfiguration(IConfiguration configuration)

Inserisce il IConfiguration in uso.

void setDebug(boolean debug)
Collection<IRemoteTest> split(int shardCount)

Versione alternativa di split() che fornisce anche il valore shardCount che viene tentato di eseguire.

void uploadTestArtifacts(File logDir, ITestInvocationListener listener)
boolean useRavenwoodResources()
boolean useRobolectricResources()

Metodi protetti

String compileLdLibraryPathInner(String androidHostOut)

Chiamiamo questa versione dal test delle unità e passiamo direttamente ANDROID_HOST_OUT.

File getJarFile(String jarName, TestInformation testInfo)

Copiato da HostTest per imitare il suo sfruttamento dei test delle unità.

void setServer(ServerSocket server)

Costruttori pubblici

IsolatedHostTest

public IsolatedHostTest ()

Metodi pubblici

addAllExcludeAnnotation

public void addAllExcludeAnnotation (Set<String> notAnnotations)

Aggiunge un Set di annotazioni da escludere se un test è contrassegnato con questo valore.

Parametri
notAnnotations Set

addAllExcludeFilters

public void addAllExcludeFilters (Set<String> filters)

Aggiunge il Set dei filtri dei test da escludere.

Parametri
filters Set

addAllIncludeAnnotation

public void addAllIncludeAnnotation (Set<String> annotations)

Aggiunge un Set di annotazioni da includere se un test è contrassegnato con questo valore.

Parametri
annotations Set

addAllIncludeFilters

public void addAllIncludeFilters (Set<String> filters)

Aggiunge il Set dei filtri dei test da includere.

Parametri
filters Set

addExcludeAnnotation

public void addExcludeAnnotation (String notAnnotation)

Aggiunge un'annotazione da escludere se un test è contrassegnato con questa annotazione.

Parametri
notAnnotation String

addExcludeFilter

public void addExcludeFilter (String filter)

Aggiunge un filtro per i test da escludere.

Parametri
filter String

addIncludeAnnotation

public void addIncludeAnnotation (String annotation)

Aggiunge un'annotazione da includere se un test è contrassegnato.

Parametri
annotation String

addIncludeFilter

public void addIncludeFilter (String filter)

Aggiunge un filtro per i test da includere.

Parametri
filter String

clearExcludeAnnotations

public void clearExcludeAnnotations ()

Elimina tutte le annotazioni di esclusione attualmente monitorate.

clearExcludeFilters

public void clearExcludeFilters ()

Elimina tutti i filtri di esclusione attualmente monitorati.

clearIncludeAnnotations

public void clearIncludeAnnotations ()

Elimina tutte le annotazioni di inclusione attualmente monitorate.

clearIncludeFilters

public void clearIncludeFilters ()

Elimina tutti i filtri di inclusione attualmente monitorati.

compileClassPath

public String compileClassPath ()

Crea un classpath per il sottoprocesso che include i file JAR necessari per eseguire i test

Resi
String una stringa che specifica il classpath separato da due punti.

compileCommandArgs

public List<String> compileCommandArgs (String classpath, 
                File artifactsDir)

Assembla gli argomenti del comando per eseguire il runner del sottoprocesso.

Parametri
classpath String

artifactsDir File

Resi
List<String>

deleteTempFiles

public void deleteTempFiles ()

getCoverageExecFile

public File getCoverageExecFile ()

Resi
File

getExcludeAnnotations

public Set<String> getExcludeAnnotations ()

Restituisce l'Set corrente delle annotazioni da escludere.

Resi
Set<String>

getExcludeFilters

public Set<String> getExcludeFilters ()

Restituisce l'attuale Set dei filtri di esclusione.

Resi
Set<String>

getIncludeAnnotations

public Set<String> getIncludeAnnotations ()

Restituisce l'Set corrente delle annotazioni da includere.

Resi
Set<String>

getIncludeFilters

public Set<String> getIncludeFilters ()

Restituisce l'Set corrente dei filtri di inclusione.

Resi
Set<String>

run

public void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Esegue i test e comunica il risultato al listener.

Parametri
testInfo TestInformation: l'oggetto TestInformation contenente informazioni utili per eseguire i test.

listener ITestInvocationListener: il ITestInvocationListener dei risultati del test

Genera
DeviceNotAvailableException

setBuild

public void setBuild (IBuildInfo build)

Parametri
build IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Attiva o disattiva la modalità di raccolta dei test

setConfiguration

public void setConfiguration (IConfiguration configuration)

Inserisce il IConfiguration in uso.

Parametri
configuration IConfiguration

setDebug

public void setDebug (boolean debug)

Parametri
debug boolean

ripartire

public Collection<IRemoteTest> split (int shardCount)

Versione alternativa di split() che fornisce anche il valore shardCount che viene tentato di eseguire. Questa opzione è utile per alcuni test runner che a volte non possono decidere in modo arbitrario.

Parametri
shardCount int: il numero di shard tentato.

Resi
Collection<IRemoteTest> una raccolta di test secondari da eseguire separatamente o null se il test non è attualmente suddivisibile

uploadTestArtifacts

public void uploadTestArtifacts (File logDir, 
                ITestInvocationListener listener)

Parametri
logDir File

listener ITestInvocationListener

useRavenwoodResources

public boolean useRavenwoodResources ()

Resi
boolean

useRobolectricResources

public boolean useRobolectricResources ()

Resi
boolean

Metodi protetti

compileLdLibraryPathInner

protected String compileLdLibraryPathInner (String androidHostOut)

Chiamiamo questa versione dal test delle unità e passiamo direttamente ANDROID_HOST_OUT. Ne abbiamo bisogno perché Java non ha un'API per impostare le variabili di ambiente.

Parametri
androidHostOut String

Resi
String

getJarFile

protected File getJarFile (String jarName, 
                TestInformation testInfo)

Copiato da HostTest per imitare il suo sfruttamento dei test delle unità.

Ispeziona diverse posizioni in cui si trovano solitamente gli artefatti per diversi casi d'uso per trovare il nostro file JAR.

Parametri
jarName String

testInfo TestInformation

Resi
File

Genera
FileNotFoundException

setServer

protected void setServer (ServerSocket server)

Parametri
server ServerSocket