InvocationExecution

public class InvocationExecution
extends Object implements IInvocationExecution

java.lang.Object
   ↳ com.android.tradefed.invoker.InvocationExecution


Classe que descreve todas as etapas de invocação: download do build, target_prep, execução de testes e limpeza. Pode ser estendido para substituir o comportamento padrão de algumas etapas. A ordem das etapas é determinada por TestInvocation.

Resumo

Constantes

String ADB_VERSION_KEY

String JAVA_CLASSPATH_KEY

String JAVA_VERSION_KEY

Construtores públicos

InvocationExecution()

Métodos públicos

void cleanUpBuilds(IInvocationContext context, IConfiguration config)

Execute a etapa de limpeza do build_provider.

void doCleanUp(IInvocationContext context, IConfiguration config, Throwable exception)

Execute a etapa de limpeza target_preparer e multi_target_preparer.

void doSetup(TestInformation testInfo, IConfiguration config, ITestLogger listener)

Execute a etapa de configuração do target_preparer e do multi_target_preparer.

void doTeardown(TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)

Execute a etapa de encerramento do target_preparer e do multi_target_preparer.

boolean fetchBuild(TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)

Execute a etapa build_provider da invocação.

void reportLogs(ITestDevice device, ITestLogger listener, TestInvocation.Stage stage)

Informar alguns registros de dispositivos em diferentes estágios da invocação.

void runDevicePostInvocationTearDown(IInvocationContext context, IConfiguration config, Throwable exception)

Invoque o ITestDevice.postInvocationTearDown(Throwable) para cada parte do dispositivo da invocação.

void runDevicePreInvocationSetup(IInvocationContext context, IConfiguration config, ITestLogger logger)

Invoque o ERROR(ITestDevice.preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice.preInvocationSetup(IBuildInfo)) para cada parte do dispositivo da invocação.

void runTests(TestInformation info, IConfiguration config, ITestInvocationListener listener)

Executa o teste.

boolean shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)

Tente fragmentar a configuração em subconfigurações para serem reagendadas e executadas em vários recursos em paralelo.

Métodos protegidos

void collectAutoInfo(IConfiguration config, TestInformation info)

Coletar automaticamente algumas informações sobre o dispositivo principal em teste.

IShardHelper createShardHelper()

Crie e retorne o IShardHelper a ser usado.

void customizeDevicePreInvocation(IConfiguration config, IInvocationContext context)

Dê uma chance de personalizar alguns dos dispositivos antes de preInvocationSetup.

String getAdbVersion()

Retorna a versão do adb em uso para a invocação.

getLabPreparersToRun(IConfiguration config, String deviceName)

Recupere uma lista de preparadores de laboratório para executar neste dispositivo.

getTargetPreparersToRun(IConfiguration config, String deviceName)

Recupera uma lista de preparadores de destino para executar neste dispositivo.

void linkExternalDirs(IBuildInfo info, TestInformation testInfo)
void logHostAdb(IConfiguration config, ITestLogger logger)

Colete os registros de $TMPDIR/adb.$UID.log.

Throwable runPreparersTearDown(TestInformation testInfo, ITestDevice device, String deviceName, int deviceIndex, ITestLogger logger, Throwable exception, preparersToRun, trackPreparersMap)
void setTestTag(IBuildInfo info, IConfiguration config)

Processar a definição da tag de teste nas informações de build.

Constantes

ADB_VERSION_KEY

public static final String ADB_VERSION_KEY

Valor da constante: "adb_version"

JAVA_CLASSPATH_KEY

public static final String JAVA_CLASSPATH_KEY

Valor da constante: "java_classpath"

JAVA_VERSION_KEY

public static final String JAVA_VERSION_KEY

Valor da constante: "java_version"

Construtores públicos

InvocationExecution

public InvocationExecution ()

Métodos públicos

cleanUpBuilds

public void cleanUpBuilds (IInvocationContext context, 
                IConfiguration config)

Execute a etapa de limpeza do build_provider. Associado à busca de build.

Parâmetros
context IInvocationContext: o IInvocationContext da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

doCleanUp

public void doCleanUp (IInvocationContext context, 
                IConfiguration config, 
                Throwable exception)

Execute a etapa de limpeza target_preparer e multi_target_preparer. Limpa os dispositivos.

Parâmetros
context IInvocationContext: o IInvocationContext da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

exception Throwable: a exceção original gerada pela execução do teste.

doSetup

public void doSetup (TestInformation testInfo, 
                IConfiguration config, 
                ITestLogger listener)

Execute a etapa de configuração do target_preparer e do multi_target_preparer. Faz toda a configuração dos dispositivos necessária para a execução do teste.

Parâmetros
testInfo TestInformation: o TestInformation da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

listener ITestLogger: o ITestLogger para informar registros de falhas de configuração.

Gera
BuildError
DeviceNotAvailableException
TargetSetupError

doTeardown

public void doTeardown (TestInformation testInfo, 
                IConfiguration config, 
                ITestLogger logger, 
                Throwable exception)

Execute a etapa de encerramento do target_preparer e do multi_target_preparer. Desmonta os dispositivos associados à configuração.

Parâmetros
testInfo TestInformation: o TestInformation da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

logger ITestLogger: o ITestLogger para informar registros.

exception Throwable: a exceção original gerada pela execução do teste.

fetchBuild

public boolean fetchBuild (TestInformation testInfo, 
                IConfiguration config, 
                IRescheduler rescheduler, 
                ITestInvocationListener listener)

Execute a etapa build_provider da invocação.

Parâmetros
testInfo TestInformation: o TestInformation da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

rescheduler IRescheduler: o IRescheduler, para reagendar partes da invocação para execução em outros recursos.

listener ITestInvocationListener: o ITestInvocation para informar falhas no download do build.

Retorna
boolean True se o download do build for concluído. Caso contrário, false.

Gera
BuildRetrievalError
DeviceNotAvailableException

reportLogs

public void reportLogs (ITestDevice device, 
                ITestLogger listener, 
                TestInvocation.Stage stage)

Informar alguns registros de dispositivos em diferentes estágios da invocação. Por exemplo: logcat.

Parâmetros
device ITestDevice: o dispositivo de onde os registros serão informados.

listener ITestLogger: o registrador dos registros.

stage TestInvocation.Stage: o estágio da invocação em que estamos.

runDevicePostInvocationTearDown

public void runDevicePostInvocationTearDown (IInvocationContext context, 
                IConfiguration config, 
                Throwable exception)

Invoque o ITestDevice.postInvocationTearDown(Throwable) para cada parte do dispositivo da invocação.

Parâmetros
context IInvocationContext: o IInvocationContext da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

exception Throwable: a exceção original gerada pelo teste em execução, se houver.

runDevicePreInvocationSetup

public void runDevicePreInvocationSetup (IInvocationContext context, 
                IConfiguration config, 
                ITestLogger logger)

Invoque o ERROR(ITestDevice.preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice.preInvocationSetup(IBuildInfo)) para cada parte do dispositivo da invocação.

Parâmetros
context IInvocationContext: o IInvocationContext da invocação.

config IConfiguration: o IConfiguration desta execução de teste.

logger ITestLogger: o ITestLogger para informar registros.

Gera
DeviceNotAvailableException
TargetSetupError

runTests

public void runTests (TestInformation info, 
                IConfiguration config, 
                ITestInvocationListener listener)

Executa o teste.

Parâmetros
info TestInformation: o TestInformation para executar testes.

config IConfiguration: o IConfiguration a ser executado

listener ITestInvocationListener: o ITestInvocationListener dos resultados do teste

shardConfig

public boolean shardConfig (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

Tente fragmentar a configuração em subconfigurações para serem reagendadas e executadas em vários recursos em paralelo.

Se uma contagem de fragmentos for maior que 1, ela simplesmente criará configurações para cada fragmento definindo índices de fragmentos e reagendando-os. Se uma contagem de fragmentos não for definida,ela vai voltar para IShardHelper.shardConfig.

Parâmetros
config IConfiguration: o IConfiguration atual.

testInfo TestInformation: o TestInformation que contém as informações dos testes.

rescheduler IRescheduler: o IRescheduler.

logger ITestLogger: ITestLogger usado para registrar o arquivo durante o fragmentação.

Retorna
boolean "true" se o teste foi fragmentado. Caso contrário, retorne false.

Métodos protegidos

collectAutoInfo

protected void collectAutoInfo (IConfiguration config, 
                TestInformation info)

Coletar automaticamente algumas informações sobre o dispositivo principal em teste.

Parâmetros
config IConfiguration

info TestInformation

Gera
DeviceNotAvailableException

createShardHelper

protected IShardHelper createShardHelper ()

Crie e retorne o IShardHelper a ser usado.

Retorna
IShardHelper

customizeDevicePreInvocation

protected void customizeDevicePreInvocation (IConfiguration config, 
                IInvocationContext context)

Dê uma chance de personalizar alguns dos dispositivos antes de preInvocationSetup.

Parâmetros
config IConfiguration: a configuração da invocação.

context IInvocationContext: o contexto de invocação atual.

getAdbVersion

protected String getAdbVersion ()

Retorna a versão do adb em uso para a invocação.

Retorna
String

getLabPreparersToRun

protected  getLabPreparersToRun (IConfiguration config, 
                String deviceName)

Recupere uma lista de preparadores de laboratório para executar neste dispositivo.

Substituído em classes de sandbox para impedir que os preparadores de laboratório sejam executados no filho do sandbox.

Parâmetros
config IConfiguration

deviceName String

Retorna

getTargetPreparersToRun

protected  getTargetPreparersToRun (IConfiguration config, 
                String deviceName)

Recupere uma lista de preparadores de destino para executar neste dispositivo.

Substituído em classes de sandbox para restringir a execução de preparadores de laboratório no filho do sandbox.

Parâmetros
config IConfiguration

deviceName String

Retorna

linkExternalDirs

protected void linkExternalDirs (IBuildInfo info, 
                TestInformation testInfo)

Parâmetros
info IBuildInfo

testInfo TestInformation

logHostAdb

protected void logHostAdb (IConfiguration config, 
                ITestLogger logger)

Colete os registros de $TMPDIR/adb.$UID.log.

Parâmetros
config IConfiguration

logger ITestLogger

runPreparersTearDown

protected Throwable runPreparersTearDown (TestInformation testInfo, 
                ITestDevice device, 
                String deviceName, 
                int deviceIndex, 
                ITestLogger logger, 
                Throwable exception, 
                 preparersToRun, 
                 trackPreparersMap)

Parâmetros
testInfo TestInformation

device ITestDevice

deviceName String

deviceIndex int

logger ITestLogger

exception Throwable

preparersToRun

trackPreparersMap

Retorna
Throwable

setTestTag

protected void setTestTag (IBuildInfo info, 
                IConfiguration config)

Processar a definição da tag de teste nas informações de build.

Parâmetros
info IBuildInfo

config IConfiguration