IsolatedHostTest

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

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


Implementa um executor do TradeFed que usa um subproceso para executar os testes em um ambiente de baixa dependência em vez de executá-los no processo principal.

Esse executor pressupõe que todos os jars configurados estejam no mesmo diretório de teste e inicia o subprocesso nesse diretório. Como ele precisa escolher um diretório de trabalho para o subprocesso, e muitos testes se beneficiam de que esse diretório seja o diretório de teste, esse foi o melhor compromisso disponível.

Resumo

Construtores públicos

IsolatedHostTest()

Métodos públicos

void addAllExcludeAnnotation(Set<String> notAnnotations)

Adiciona um Set de anotações a serem excluídas se um teste for marcado com ele.

void addAllExcludeFilters(Set<String> filters)

Adiciona o Set de filtros de quais testes excluir.

void addAllIncludeAnnotation(Set<String> annotations)

Adiciona um Set de anotações para incluir se um teste for marcado com ele.

void addAllIncludeFilters(Set<String> filters)

Adiciona o Set de filtros de quais testes incluir.

void addExcludeAnnotation(String notAnnotation)

Adiciona uma anotação para excluir se um teste for marcado com ela.

void addExcludeFilter(String filter)

Adiciona um filtro de quais testes excluir.

void addIncludeAnnotation(String annotation)

Adiciona uma anotação para incluir se um teste for marcado com ela.

void addIncludeFilter(String filter)

Adiciona um filtro de quais testes incluir.

void clearExcludeAnnotations()

Exclui todas as anotações de exclusão rastreadas no momento.

void clearExcludeFilters()

Exclui todos os filtros de exclusão rastreados no momento.

void clearIncludeAnnotations()

Exclui todas as anotações de inclusão rastreadas no momento.

void clearIncludeFilters()

Exclui todos os filtros de inclusão rastreados no momento.

String compileClassPath()

Cria um classpath para o subprocesso que inclui os jars necessários para executar os testes.

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

Reúne os argumentos de comando para executar o executor de subprocesso.

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

Retorna o Set atual de anotações a serem excluídas.

Set<String> getExcludeFilters()

Retorna o Set atual dos filtros de exclusão.

Set<String> getIncludeAnnotations()

Retorna o Set atual das anotações a serem incluídas.

Set<String> getIncludeFilters()

Retorna o Set atual dos filtros de inclusão.

void run(TestInformation testInfo, ITestInvocationListener listener)

Executa os testes e informa o resultado ao listener.

void setBuild(IBuildInfo build)

void setCollectTestsOnly(boolean shouldCollectTest)

Ativa ou desativa o modo de coleta de testes.

void setConfiguration(IConfiguration configuration)

Injeta a IConfiguration em uso.

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

Versão alternativa de split() que também fornece o shardCount, cuja tentativa de execução está em andamento.

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

Métodos protegidos

String compileLdLibraryPathInner(String androidHostOut)

Chamamos essa versão do teste de unidade e transmitimos ANDROID_HOST_OUT diretamente.

File getJarFile(String jarName, TestInformation testInfo)

Copiado do HostTest para imitar o uso de testes de unidade.

void setServer(ServerSocket server)

Construtores públicos

IsolatedHostTest

public IsolatedHostTest ()

Métodos públicos

addAllExcludeAnnotation

public void addAllExcludeAnnotation (Set<String> notAnnotations)

Adiciona um Set de anotações a serem excluídas se um teste for marcado com ele.

Parâmetros
notAnnotations Set

addAllExcludeFilters

public void addAllExcludeFilters (Set<String> filters)

Adiciona o Set de filtros de quais testes excluir.

Parâmetros
filters Set

addAllIncludeAnnotation

public void addAllIncludeAnnotation (Set<String> annotations)

Adiciona um Set de anotações para incluir se um teste for marcado com ele.

Parâmetros
annotations Set

addAllIncludeFilters

public void addAllIncludeFilters (Set<String> filters)

Adiciona o Set de filtros de quais testes incluir.

Parâmetros
filters Set

addExcludeAnnotation

public void addExcludeAnnotation (String notAnnotation)

Adiciona uma anotação para excluir se um teste for marcado com ela.

Parâmetros
notAnnotation String

addExcludeFilter

public void addExcludeFilter (String filter)

Adiciona um filtro de quais testes excluir.

Parâmetros
filter String

addIncludeAnnotation

public void addIncludeAnnotation (String annotation)

Adiciona uma anotação para incluir se um teste for marcado com ela.

Parâmetros
annotation String

addIncludeFilter

public void addIncludeFilter (String filter)

Adiciona um filtro de quais testes incluir.

Parâmetros
filter String

clearExcludeAnnotations

public void clearExcludeAnnotations ()

Exclui todas as anotações de exclusão rastreadas no momento.

clearExcludeFilters

public void clearExcludeFilters ()

Exclui todos os filtros de exclusão rastreados no momento.

clearIncludeAnnotations

public void clearIncludeAnnotations ()

Exclui todas as anotações de inclusão rastreadas no momento.

clearIncludeFilters

public void clearIncludeFilters ()

Exclui todos os filtros de inclusão rastreados no momento.

compileClassPath

public String compileClassPath ()

Cria um classpath para o subprocesso que inclui os jars necessários para executar os testes.

Retorna
String uma string que especifica o classpath separado por dois pontos.

compileCommandArgs

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

Reúne os argumentos de comando para executar o executor de subprocesso.

Parâmetros
classpath String

artifactsDir File

Retorna
List<String>

deleteTempFiles

public void deleteTempFiles ()

getCoverageExecFile

public File getCoverageExecFile ()

Retorna
File

getExcludeAnnotations

public Set<String> getExcludeAnnotations ()

Retorna o Set atual de anotações a serem excluídas.

Retorna
Set<String>

getExcludeFilters

public Set<String> getExcludeFilters ()

Retorna o Set atual dos filtros de exclusão.

Retorna
Set<String>

getIncludeAnnotations

public Set<String> getIncludeAnnotations ()

Retorna o Set atual das anotações a serem incluídas.

Retorna
Set<String>

getIncludeFilters

public Set<String> getIncludeFilters ()

Retorna o Set atual dos filtros de inclusão.

Retorna
Set<String>

run

public void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Executa os testes e informa o resultado ao listener.

Parâmetros
testInfo TestInformation: o objeto TestInformation que contém informações úteis para executar testes.

listener ITestInvocationListener: o ITestInvocationListener dos resultados do teste.

Gera
DeviceNotAvailableException

setBuild

public void setBuild (IBuildInfo build)

Parâmetros
build IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Ativa ou desativa o modo de coleta de testes.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Injeta a IConfiguration em uso.

Parâmetros
configuration IConfiguration

setDebug

public void setDebug (boolean debug)

Parâmetros
debug boolean

dividir

public Collection<IRemoteTest> split (int shardCount)

Versão alternativa de split() que também fornece o shardCount, cuja tentativa de execução está em andamento. Isso é útil para alguns executores de teste que, em alguns cenários, não conseguem decidir sem um critério explícito.

Parâmetros
shardCount int: a contagem de fragmentos tentada.

Retorna
Collection<IRemoteTest> Uma coleção de subtestes a serem executados separadamente ou null se o teste não puder ser fragmentado no momento.

uploadTestArtifacts

public void uploadTestArtifacts (File logDir, 
                ITestInvocationListener listener)

Parâmetros
logDir File

listener ITestInvocationListener

useRavenwoodResources

public boolean useRavenwoodResources ()

Retorna
boolean

useRobolectricResources

public boolean useRobolectricResources ()

Retorna
boolean

Métodos protegidos

compileLdLibraryPathInner

protected String compileLdLibraryPathInner (String androidHostOut)

Chamamos essa versão do teste de unidade e transmitimos ANDROID_HOST_OUT diretamente. Precisamos dele porque o Java não tem uma API para definir variáveis de ambiente.

Parâmetros
androidHostOut String

Retorna
String

getJarFile

protected File getJarFile (String jarName, 
                TestInformation testInfo)

Copiado do HostTest para imitar o uso de testes de unidade.

Inspecione vários locais onde o artefato geralmente está localizado para diferentes casos de uso e encontre nosso jar.

Parâmetros
jarName String

testInfo TestInformation

Retorna
File

Gera
FileNotFoundException

setServer

protected void setServer (ServerSocket server)

Parâmetros
server ServerSocket