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

Campos

public static final String ADB_VERSION_KEY

public static final String JAVA_CLASSPATH_KEY

public static final 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 de target_preparer e multi_target_preparer.

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

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

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

Execute a etapa de desmontagem de target_preparer e 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 do dispositivo 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 dividir a configuração em subconfigurações para que ela seja reprogramada para ser executada 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)

Permite personalizar parte do dispositivo antes de preInvocationSetup.

String getAdbVersion()

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

getLabPreparersToRun(IConfiguration config, String deviceName)

Extraia uma lista de preparadores de laboratórios para execução neste dispositivo.

getTargetPreparersToRun(IConfiguration config, String deviceName)

Extrai uma lista de preparadores de destino para execução 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)

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

Campos

ADB_VERSION_KEY

public static final String ADB_VERSION_KEY

JAVA_CLASSPATH_KEY

public static final String JAVA_CLASSPATH_KEY

JAVA_VERSION_KEY

public static final String JAVA_VERSION_KEY

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 de target_preparer e multi_target_preparer. Os dispositivos são limpos.

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 de target_preparer e multi_target_preparer. Verifique se todos os dispositivos estão configurados corretamente para que o teste seja executado.

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 desmontagem de target_preparer e multi_target_preparer. Os dispositivos são desativados 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 gerar 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 reprogramar partes da invocação para execução em outro recurso

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

Retorna
boolean Verdadeiro se o download do build foi bem-sucedido. Caso contrário, é falso.

Gera
BuildRetrievalError
DeviceNotAvailableException

reportLogs

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

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

Parâmetros
device ITestDevice: o dispositivo para informar os registros.

listener ITestLogger: o registrador dos registros.

stage TestInvocation.Stage: a etapa 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 gerar 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 dividir a configuração em subconfigurações para que ela seja reprogramada para ser executada em vários recursos em paralelo.

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

Parâmetros
config IConfiguration: o IConfiguration atual.

testInfo TestInformation: o TestInformation que armazena as informações dos testes.

rescheduler IRescheduler: o IRescheduler.

logger ITestLogger: ITestLogger usado para registrar o arquivo durante o sharding.

Retorna
boolean Verdadeiro se o teste foi dividido em fragmentos. 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)

Permite personalizar parte do dispositivo 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)

Extraia uma lista de preparadores de laboratórios para execução neste dispositivo.

Substituído em classes de sandbox para restringir a execução de preparadores de laboratórios dentro do sandbox filho

Parâmetros
config IConfiguration

deviceName String

Retorna

getTargetPreparersToRun

protected  getTargetPreparersToRun (IConfiguration config, 
                String deviceName)

Extrai uma lista de preparadores de destino para execução neste dispositivo.

Substituído em classes de sandbox para restringir a execução de preparadores de laboratórios dentro do sandbox filho

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)

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

Parâmetros
info IBuildInfo

config IConfiguration