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.

List<ITargetPreparer> getLabPreparersToRun(IConfiguration config, String deviceName)

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

List<ITargetPreparer> getTargetPreparersToRun(IConfiguration config, String deviceName)

Recupere 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, List<ITargetPreparer> preparersToRun, Map<String, Set<ITargetPreparer>> 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 do 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. Faz a limpeza dos 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.

Gera
Throwable

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.

Gera
Throwable

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 verdadeiro 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 List<ITargetPreparer> 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
List<ITargetPreparer>

getTargetPreparersToRun

protected List<ITargetPreparer> getTargetPreparersToRun (IConfiguration config, 
                String deviceName)

Recupere uma lista de preparadores de destino 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
List<ITargetPreparer>

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, 
                List<ITargetPreparer> preparersToRun, 
                Map<String, Set<ITargetPreparer>> trackPreparersMap)

Parâmetros
testInfo TestInformation

device ITestDevice

deviceName String

deviceIndex int

logger ITestLogger

exception Throwable

preparersToRun List

trackPreparersMap Map

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