ITestSuite

public abstract class ITestSuite
extends Object implements IRemoteTest , IDeviceTest , IBuildReceiver , ISystemStatusCheckerReceiver , IShardableTest , ITestCollector , IInvocationContextReceiver , IRuntimeHintProvider , IMetricCollectorReceiver , IConfigurationReceiver , IReportNotExecuted , ITokenRequest , ITestLoggerReceiver

java.lang.Object
com.android.tradefed.testtype.suite.ITestSuite


Test Suite를 실행하는 데 사용되는 추상 클래스입니다. 이 클래스는 Suite 실행 방법의 기반을 제공합니다. 각 구현은 loadTests() 메서드를 통해 테스트 목록을 정의할 수 있습니다.

요약

필드

public static final String ABI_OPTION

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

public static final String MODULE_CHECKER_POST

public static final String MODULE_CHECKER_PRE

public static final String MODULE_END_TIME

public static final String MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_START_TIME

public static final String PARAMETER_KEY

public static final String PREPARER_WHITELIST

public static final String PRIMARY_ABI_RUN

public static final String RANDOM_SEED

public static final String RUNNER_WHITELIST

public static final String SKIP_HOST_ARCH_CHECK

public static final String SKIP_STAGING_ARTIFACTS

public static final String SKIP_SYSTEM_STATUS_CHECKER

public static final String TEST_TYPE_KEY

public static final String TEST_TYPE_VALUE_PERFORMANCE

public static final String TOKEN_KEY

protected boolean mRecoverDeviceByCvd

공개 생성자

ITestSuite ()

공개 메소드

void addModuleMetadataExcludeFilters ( MultiMap <String, String> filters)
void addModuleMetadataIncludeFilters ( MultiMap <String, String> filters)
void cleanUpSuiteSetup ()

제품군 설정 중에 필요했지만 테스트 실행에는 필요하지 않은 모든 항목을 정리할 수 있는 기회입니다.

boolean filterByConfigMetadata ( IConfiguration config, MultiMap <String, String> include, MultiMap <String, String> exclude)

메타데이터 필터를 구성에 적용하고 구성이 실행되어야 하는지 확인하세요.

getAbis ( ITestDevice device)

호환성 테스트 AbiUtils.getAbisSupportedByCompatibility() 와 테스트 중인 장치 모두에서 지원되는 ABI 세트를 가져옵니다.

static getAbisForBuildTargetArchFromSuite ()

TestSuiteInfo에서 가능한 abis를 반환합니다.

IBuildInfo getBuildInfo ()

ITestSuite 를 구현하려면 테스트를 로드하기 위한 빌드 정보가 필요할 수 있습니다.

final IConfiguration getConfiguration ()

IConfiguration 호출을 반환합니다.

ITestLogger getCurrentTestLogger ()
ITestDevice getDevice ()

테스트 중인 장치를 가져옵니다.

ModuleDefinition getDirectModule ()

직접 실행될 ModuleDefinition 반환하거나, 아직 없는 경우(ITestSuite가 아직 샤딩되지 않은 경우) null을 반환합니다.

boolean getIntraModuleSharding ()
IInvocationContext getInvocationContext ()

호출 컨텍스트를 반환합니다.

MultiMap <String, String> getModuleMetadataIncludeFilters ()
ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()
final String getRequestedAbi ()

-a 또는 --abi 옵션을 사용하여 요청된 abi를 반환합니다.

getRequiredTokens ( TestInformation testInfo)

테스트에 필요한 토큰 목록을 반환합니다.

long getRuntimeHint ()

테스트의 예상 런타임을 밀리초 단위로 반환합니다.

File getTestsDir ()
boolean isSplitting ()

현재 IShardableTest.split(int) 에 있으면 true를 반환합니다.

abstract loadTests ()

실행될 테스트 구성을 로드하는 추상 메서드입니다.

void reportNotExecuted ( ITestInvocationListener listener, String message)

실행되지 않은 테스트를 제공된 기본 리스너에 보고합니다.

void reportNotExecuted ( ITestInvocationListener listener)

실행되지 않은 테스트를 제공된 기본 리스너에 보고합니다.

final void run ( TestInformation testInfo, ITestInvocationListener listener)

loadTests() 에서 로드된 모든 테스트에 대한 일반 실행 메서드입니다.

void setAbiName (String abiName)

mAbiName 값 설정

final void setAbis ( abis) setAbis ( abis)
void setBuild ( IBuildInfo buildInfo)

void setCollectTestsOnly (boolean shouldCollectTest)

수집기 전용 모드에서 테스트 모음을 실행하세요. 이 인터페이스를 구현하려면 모든 하위 테스트도 필요합니다.

void setConfiguration ( IConfiguration configuration)

사용 중인 IConfiguration 삽입합니다.

void setDevice ( ITestDevice device)

테스트 중인 장치를 주입합니다.

void setDirectModule ( ModuleDefinition module)
void setIntraModuleSharding (boolean intraModuleSharding)
void setInvocationContext ( IInvocationContext invocationContext)

void setMetricCollectors ( collectors) setMetricCollectors ( collectors)

테스트 실행을 위해 정의된 IMetricCollector 목록을 설정합니다.

void setMultiDeviceStrategy ( ITestSuite.MultiDeviceModuleStrategy strategy)
void setPrimaryAbiRun (boolean primaryAbiRun)

mPrimaryAbiRun 값 설정

void setShouldMakeDynamicModule (boolean dynamicModule)

분산 샤딩을 수행할 때 풀에서 테스트를 공유하는 ModuleDefinition을 가질 수 없습니다. 그렇지 않으면 모듈 내 샤딩이 작동하지 않으므로 비활성화하도록 허용합니다.

void setSystemStatusChecker ( systemCheckers) setSystemStatusChecker ( systemCheckers)

테스트 구성에서 ISystemStatusChecker 를 설정합니다.

void setTestLogger ( ITestLogger testLogger)

ITestLogger 인스턴스를 삽입합니다.

split (Integer shardCountHint, TestInformation testInfo)

샤드를 생성하는 상위 항목의 초기 정보가 포함된 TestInformation 도 제공하는 split(int) 의 대체 버전입니다.

보호된 방법

createModuleListeners ()

ModuleListener 레벨에 적용 가능한 ITestInvocationListener 목록을 반환합니다.

boolean filterByRunnerType ( IConfiguration config, allowedRunners) filterByRunnerType ( IConfiguration config, allowedRunners)

Runner 화이트리스트 필터링을 적용하여 화이트리스트에 포함되지 않은 모든 러너를 제거합니다.

getAbisForBuildTargetArch ()

호스트 빌드 대상 아키텍처에서 지원하는 abis를 반환합니다.

getHostAbis ()

호스트 머신 abis를 반환합니다.

boolean shouldModuleRun ( ModuleDefinition module)

필드

ABI_OPTION

public static final String ABI_OPTION

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

MODULE_CHECKER_POST

public static final String MODULE_CHECKER_POST

MODULE_CHECKER_PRE

public static final String MODULE_CHECKER_PRE

MODULE_END_TIME

public static final String MODULE_END_TIME

MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

MODULE_START_TIME

public static final String MODULE_START_TIME

PARAMETER_KEY

public static final String PARAMETER_KEY

PREPARER_화이트리스트

public static final String PREPARER_WHITELIST

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

RANDOM_SEED

public static final String RANDOM_SEED

RUNNER_화이트리스트

public static final String RUNNER_WHITELIST

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

SKIP_STAGING_ARTIFACTS

public static final String SKIP_STAGING_ARTIFACTS

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

TEST_TYPE_KEY

public static final String TEST_TYPE_KEY

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

TOKEN_KEY

public static final String TOKEN_KEY

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

공개 생성자

ITestSuite

public ITestSuite ()

공개 메소드

addModuleMetadataExcludeFilters

public void addModuleMetadataExcludeFilters (MultiMap<String, String> filters)

매개변수
filters MultiMap

addModuleMetadataIncludeFilters

public void addModuleMetadataIncludeFilters (MultiMap<String, String> filters)

매개변수
filters MultiMap

cleanUpSuite설정

public void cleanUpSuiteSetup ()

제품군 설정 중에 필요했지만 테스트 실행에는 필요하지 않은 모든 항목을 정리할 수 있는 기회입니다.

filterByConfigMetadata

public boolean filterByConfigMetadata (IConfiguration config, 
                MultiMap<String, String> include, 
                MultiMap<String, String> exclude)

메타데이터 필터를 구성에 적용하고 구성이 실행되어야 하는지 확인하세요.

매개변수
config IConfiguration : 평가 중인 IConfiguration 입니다.

include MultiMap : 메타데이터 포함 필터

exclude MultiMap : 메타데이터 제외 필터

보고
boolean 모듈이 실행되어야 하면 참이고, 그렇지 않으면 거짓입니다.

getAbis

public  getAbis (ITestDevice device)

호환성 테스트 AbiUtils.getAbisSupportedByCompatibility() 와 테스트 중인 장치 모두에서 지원되는 ABI 세트를 가져옵니다.

매개변수
device ITestDevice

보고
테스트를 실행할 ABI 세트

던지기
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

TestSuiteInfo에서 가능한 abis를 반환합니다.

보고

getBuildInfo

public IBuildInfo getBuildInfo ()

ITestSuite 를 구현하려면 테스트를 로드하기 위한 빌드 정보가 필요할 수 있습니다.

보고
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

IConfiguration 호출을 반환합니다.

보고
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

보고
ITestLogger

getDevice

public ITestDevice getDevice ()

테스트 중인 장치를 가져옵니다.

보고
ITestDevice ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

직접 실행될 ModuleDefinition 반환하거나, 아직 없는 경우(ITestSuite가 아직 샤딩되지 않은 경우) null을 반환합니다.

보고
ModuleDefinition

getIntraModule샤딩

public boolean getIntraModuleSharding ()

보고
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

호출 컨텍스트를 반환합니다.

보고
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

보고
MultiMap <String, String>

getMultiDevice전략

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

보고
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

-a 또는 --abi 옵션을 사용하여 요청된 abi를 반환합니다.

보고
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

테스트에 필요한 토큰 목록을 반환합니다. 토큰 지원이 없으면 null을 반환합니다.

매개변수
testInfo TestInformation

보고

getRuntimeHint

public long getRuntimeHint ()

테스트의 예상 런타임을 밀리초 단위로 반환합니다. 시간은 샤딩 실행의 부하를 분산하는 데 사용됩니다.

보고
long

getTestsDir

public File getTestsDir ()

보고
File

분할 중

public boolean isSplitting ()

현재 IShardableTest.split(int) 에 있으면 true를 반환합니다.

보고
boolean

부하 테스트

public abstract  loadTests ()

실행될 테스트 구성을 로드하는 추상 메서드입니다. 각 테스트는 IConfiguration 과 결과를 보고하는 고유한 이름으로 정의됩니다.

보고

보고서가 실행되지 않음

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

실행되지 않은 테스트를 제공된 기본 리스너에 보고합니다. NOT_EXECUTED_FAILURE 메시지와 함께 실패한 것으로 보고되어야 합니다.

매개변수
listener ITestInvocationListener : 실행되지 않은 결과를 보고하는 기본 리스너입니다.

message String : 실행되지 않은 실패와 관련된 메시지입니다.

보고서가 실행되지 않음

public void reportNotExecuted (ITestInvocationListener listener)

실행되지 않은 테스트를 제공된 기본 리스너에 보고합니다. NOT_EXECUTED_FAILURE 메시지와 함께 실패한 것으로 보고되어야 합니다.

매개변수
listener ITestInvocationListener : 실행되지 않은 결과를 보고하는 기본 리스너입니다.

달리다

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

loadTests() 에서 로드된 모든 테스트에 대한 일반 실행 메서드입니다.

매개변수
testInfo TestInformation : 테스트를 실행하는 데 유용한 정보가 포함된 TestInformation 개체입니다.

listener ITestInvocationListener : 테스트 결과의 ITestInvocationListener

던지기
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

mAbiName 값 설정

매개변수
abiName String

setAbis

public final void setAbis ( abis)

매개변수
abis

세트빌드

public void setBuild (IBuildInfo buildInfo)

매개변수
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

수집기 전용 모드에서 테스트 모음을 실행하세요. 이 인터페이스를 구현하려면 모든 하위 테스트도 필요합니다.

setConfiguration

public void setConfiguration (IConfiguration configuration)

사용 중인 IConfiguration 삽입합니다.

매개변수
configuration IConfiguration

setDevice

public void setDevice (ITestDevice device)

테스트 중인 장치를 주입합니다.

매개변수
device ITestDevice : 사용할 ITestDevice

setDirectModule

public void setDirectModule (ModuleDefinition module)

매개변수
module ModuleDefinition

setIntraModule샤딩

public void setIntraModuleSharding (boolean intraModuleSharding)

매개변수
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

매개변수
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

테스트 실행을 위해 정의된 IMetricCollector 목록을 설정합니다.

매개변수
collectors

setMultiDevice전략

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

매개변수
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

mPrimaryAbiRun 값 설정

매개변수
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

분산 샤딩을 수행할 때 풀에서 테스트를 공유하는 ModuleDefinition을 가질 수 없습니다. 그렇지 않으면 모듈 내 샤딩이 작동하지 않으므로 비활성화하도록 허용합니다.

매개변수
dynamicModule boolean

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

테스트 구성에서 ISystemStatusChecker 를 설정합니다.

매개변수
systemCheckers

setTestLogger

public void setTestLogger (ITestLogger testLogger)

ITestLogger 인스턴스를 삽입합니다.

매개변수
testLogger ITestLogger

나뉘다

public  split (Integer shardCountHint, 
                TestInformation testInfo)

샤드를 생성하는 상위 항목의 초기 정보가 포함된 TestInformation 도 제공하는 split(int) 의 대체 버전입니다. 샤딩 중에 장치 또는 빌드 정보와 같은 정보에 액세스해야 하는 경우 유용합니다.

매개변수
shardCountHint Integer : 시도된 샤드 수입니다.

testInfo TestInformation : 상위 TestInformation

보고
별도로 실행될 하위 테스트 모음 또는 테스트가 현재 분할 가능하지 않은 경우 null

보호된 방법

createModuleListeners

protected  createModuleListeners ()

ModuleListener 레벨에 적용 가능한 ITestInvocationListener 목록을 반환합니다. 이러한 리스너는 각 모듈에 대해 재사용되며 다시 인스턴스화되지 않으므로 내부 상태를 가정해서는 안 됩니다.

보고

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Runner 화이트리스트 필터링을 적용하여 화이트리스트에 포함되지 않은 모든 러너를 제거합니다. 구성에 실행기가 여러 개 있는 경우 일부 실행기가 제거될 수 있으며 구성은 계속 실행됩니다.

매개변수
config IConfiguration : 평가 중인 IConfiguration 입니다.

allowedRunners : 현재 실행자 화이트리스트입니다.

보고
boolean 구성 모듈 실행이 허용되면 참이고, 그렇지 않으면 거짓입니다.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

호스트 빌드 대상 아키텍처에서 지원하는 abis를 반환합니다. 테스트를 위해 노출되었습니다.

보고

getHostAbis

protected  getHostAbis ()

호스트 머신 abis를 반환합니다.

보고

해야 할 모듈 실행

protected boolean shouldModuleRun (ModuleDefinition module)

매개변수
module ModuleDefinition

보고
boolean