IsolatedHostTest

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

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


Implementa un ejecutor de TradeFed que usa un subproceso para ejecutar las pruebas en un entorno de baja dependencia en lugar de ejecutarlas en el proceso principal.

Este ejecutor supone que todos los archivos JAR configurados se encuentran en el mismo directorio de prueba y lanza el subproceso en ese directorio. Dado que debe elegir un directorio de trabajo para el subproceso y muchas pruebas se benefician de que ese directorio sea el directorio de prueba, este fue el mejor compromiso disponible.

Resumen

Constructores públicos

IsolatedHostTest()

Métodos públicos

void addAllExcludeAnnotation(Set<String> notAnnotations)

Agrega un Set de anotaciones para excluir si una prueba está marcada con él.

void addAllExcludeFilters(Set<String> filters)

Agrega el Set de los filtros de las pruebas que se excluirán.

void addAllIncludeAnnotation(Set<String> annotations)

Agrega un Set de anotaciones para incluir si una prueba está marcada con él.

void addAllIncludeFilters(Set<String> filters)

Agrega el Set de los filtros de las pruebas que se incluirán.

void addExcludeAnnotation(String notAnnotation)

Agrega una anotación para excluir si una prueba está marcada con ella.

void addExcludeFilter(String filter)

Agrega un filtro de qué pruebas se deben excluir.

void addIncludeAnnotation(String annotation)

Agrega una anotación para incluir si una prueba está marcada con ella.

void addIncludeFilter(String filter)

Agrega un filtro de las pruebas que se incluirán.

void clearExcludeAnnotations()

Borra todas las anotaciones de exclusión que se registran actualmente.

void clearExcludeFilters()

Borra todos los filtros de exclusión que se rastrean actualmente.

void clearIncludeAnnotations()

Borra todas las anotaciones de inclusión que se rastrean actualmente.

void clearIncludeFilters()

Borra todos los filtros de inclusión que se rastrean actualmente.

String compileClassPath()

Crea una ruta de acceso a clases para el subproceso que incluye los archivos .jar necesarios para ejecutar las pruebas.

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

Ensambla los argumentos del comando para ejecutar el ejecutor de subprocesos.

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

Devuelve el Set actual de las anotaciones que se excluirán.

Set<String> getExcludeFilters()

Devuelve el Set actual de los filtros de exclusión.

Set<String> getIncludeAnnotations()

Devuelve el Set actual de las anotaciones que se incluirán.

Set<String> getIncludeFilters()

Devuelve el Set actual de los filtros de inclusión.

void run(TestInformation testInfo, ITestInvocationListener listener)

Ejecuta las pruebas y le informa el resultado al objeto de escucha.

void setBuild(IBuildInfo build)

void setCollectTestsOnly(boolean shouldCollectTest)

Habilita o inhabilita el modo de recopilación de pruebas

void setConfiguration(IConfiguration configuration)

Inserta el IConfiguration en uso.

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

Versión alternativa de split() que también proporciona el shardCount que se intenta ejecutar.

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

Métodos protegidos

String compileLdLibraryPathInner(String androidHostOut)

Llamamos a esta versión desde la prueba unitaria y pasamos ANDROID_HOST_OUT directamente.

File getJarFile(String jarName, TestInformation testInfo)

Se copió de HostTest para imitar su estructura de pruebas de unidades.

void setServer(ServerSocket server)

Constructores públicos

IsolatedHostTest

public IsolatedHostTest ()

Métodos públicos

addAllExcludeAnnotation

public void addAllExcludeAnnotation (Set<String> notAnnotations)

Agrega un Set de anotaciones para excluir si una prueba está marcada con él.

Parámetros
notAnnotations Set

addAllExcludeFilters

public void addAllExcludeFilters (Set<String> filters)

Agrega el Set de los filtros de las pruebas que se excluirán.

Parámetros
filters Set

addAllIncludeAnnotation

public void addAllIncludeAnnotation (Set<String> annotations)

Agrega un Set de anotaciones para incluir si una prueba está marcada con él.

Parámetros
annotations Set

addAllIncludeFilters

public void addAllIncludeFilters (Set<String> filters)

Agrega el Set de los filtros de las pruebas que se incluirán.

Parámetros
filters Set

addExcludeAnnotation

public void addExcludeAnnotation (String notAnnotation)

Agrega una anotación para excluir si una prueba está marcada con ella.

Parámetros
notAnnotation String

addExcludeFilter

public void addExcludeFilter (String filter)

Agrega un filtro de qué pruebas se deben excluir.

Parámetros
filter String

addIncludeAnnotation

public void addIncludeAnnotation (String annotation)

Agrega una anotación para incluir si una prueba está marcada con ella.

Parámetros
annotation String

addIncludeFilter

public void addIncludeFilter (String filter)

Agrega un filtro de las pruebas que se incluirán.

Parámetros
filter String

clearExcludeAnnotations

public void clearExcludeAnnotations ()

Borra todas las anotaciones de exclusión que se registran actualmente.

clearExcludeFilters

public void clearExcludeFilters ()

Borra todos los filtros de exclusión que se rastrean actualmente.

clearIncludeAnnotations

public void clearIncludeAnnotations ()

Borra todas las anotaciones de inclusión que se rastrean actualmente.

clearIncludeFilters

public void clearIncludeFilters ()

Borra todos los filtros de inclusión que se rastrean actualmente.

compileClassPath

public String compileClassPath ()

Crea una ruta de acceso a clases para el subproceso que incluye los archivos .jar necesarios para ejecutar las pruebas.

Muestra
String Es una cadena que especifica la ruta de acceso a las clases separada por dos puntos.

compileCommandArgs

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

Ensambla los argumentos del comando para ejecutar el ejecutor de subprocesos.

Parámetros
classpath String

artifactsDir File

Muestra
List<String>

deleteTempFiles

public void deleteTempFiles ()

getCoverageExecFile

public File getCoverageExecFile ()

Muestra
File

getExcludeAnnotations

public Set<String> getExcludeAnnotations ()

Devuelve el Set actual de las anotaciones que se excluirán.

Muestra
Set<String>

getExcludeFilters

public Set<String> getExcludeFilters ()

Devuelve el Set actual de los filtros de exclusión.

Muestra
Set<String>

getIncludeAnnotations

public Set<String> getIncludeAnnotations ()

Devuelve el Set actual de las anotaciones que se incluirán.

Muestra
Set<String>

getIncludeFilters

public Set<String> getIncludeFilters ()

Devuelve el Set actual de los filtros de inclusión.

Muestra
Set<String>

run

public void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Ejecuta las pruebas y le informa el resultado al objeto de escucha.

Parámetros
testInfo TestInformation: Es el objeto TestInformation que contiene información útil para ejecutar pruebas.

listener ITestInvocationListener: El ITestInvocationListener de los resultados de la prueba

Arroja
DeviceNotAvailableException

setBuild

public void setBuild (IBuildInfo build)

Parámetros
build IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Habilita o inhabilita el modo de recopilación de pruebas

setConfiguration

public void setConfiguration (IConfiguration configuration)

Inserta el IConfiguration en uso.

Parámetros
configuration IConfiguration

setDebug

public void setDebug (boolean debug)

Parámetros
debug boolean

split

public Collection<IRemoteTest> split (int shardCount)

Versión alternativa de split() que también proporciona el shardCount que se intenta ejecutar. Esto es útil para algunos ejecutores de pruebas que no pueden decidir de forma arbitraria en algunos casos.

Parámetros
shardCount int: Es el recuento de fragmentos intentado.

Muestra
Collection<IRemoteTest> Colección de subpruebas que se ejecutarán por separado o null si la prueba no se puede fragmentar actualmente

uploadTestArtifacts

public void uploadTestArtifacts (File logDir, 
                ITestInvocationListener listener)

Parámetros
logDir File

listener ITestInvocationListener

useRavenwoodResources

public boolean useRavenwoodResources ()

Muestra
boolean

useRobolectricResources

public boolean useRobolectricResources ()

Muestra
boolean

Métodos protegidos

compileLdLibraryPathInner

protected String compileLdLibraryPathInner (String androidHostOut)

Llamamos a esta versión desde la prueba unitaria y pasamos ANDROID_HOST_OUT directamente. La necesitamos porque Java no tiene una API para establecer variables de entorno.

Parámetros
androidHostOut String

Muestra
String

getJarFile

protected File getJarFile (String jarName, 
                TestInformation testInfo)

Se copió de HostTest para imitar su estructura de pruebas de unidades.

Inspecciona varias ubicaciones donde suelen encontrarse los artefactos para diferentes casos de uso y encuentra nuestro archivo JAR.

Parámetros
jarName String

testInfo TestInformation

Muestra
File

Arroja
FileNotFoundException

setServer

protected void setServer (ServerSocket server)

Parámetros
server ServerSocket