ITestSuite

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

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


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

요약

상수

String ABI_OPTION

String ACTIVE_MAINLINE_PARAMETER_KEY

String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

String ENABLE_RESOLVE_SYM_LINKS

String MAINLINE_PARAMETER_KEY

String MODULE_CHECKER_POST

String MODULE_CHECKER_PRE

String MODULE_END_TIME

String MODULE_METADATA_EXCLUDE_FILTER

String MODULE_METADATA_INCLUDE_FILTER

String MODULE_START_TIME

String PARAMETER_KEY

String PREPARER_WHITELIST

String PRIMARY_ABI_RUN

String RANDOM_SEED

String RUNNER_WHITELIST

String SKIP_HOST_ARCH_CHECK

String SKIP_STAGING_ARTIFACTS

String SKIP_SYSTEM_STATUS_CHECKER

String STAGE_MODULE_ARTIFACTS

String TEST_TYPE_KEY

String TEST_TYPE_VALUE_PERFORMANCE

String TOKEN_KEY

필드

protected boolean mEnableResolveSymlinks

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에서 가능한 ABI를 반환합니다.

IBuildInfo getBuildInfo()

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

final IConfiguration getConfiguration()

호출 IConfiguration를 반환합니다.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

테스트 대상 기기를 가져옵니다.

ModuleDefinition getDirectModule()

직접 실행할 ModuleDefinition를 반환합니다. 아직 없는 경우 (ITTestSuite가 아직 샤딩되지 않은 경우) 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 isRemoveModuleBuffering()
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)
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)

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

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

mPrimaryAbiRun 값 설정

void setShouldMakeDynamicModule(boolean dynamicModule)

분산 샤딩을 실행할 때는 풀에서 테스트를 공유하는 ModuleDefinition이 있을 수 없습니다. 그렇지 않으면 모듈 내 샤딩이 작동하지 않으므로 사용 중지할 수 있습니다.

void setSkipContext(SkipContext skipContext)
void setSystemStatusChecker( systemCheckers)

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

void setTestLogger(ITestLogger testLogger)

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

split(Integer shardCountHint, TestInformation testInfo)

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

보호된 메서드

createModuleListeners()

ModuleListener 수준에 적용되는 ITestInvocationListener 목록을 반환합니다.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

허용 목록에 추가되지 않은 러너를 삭제하여 러너 허용 목록 필터링을 적용합니다.

getAbisForBuildTargetArch()

호스트 빌드 타겟 아키텍처에서 지원하는 ABI를 반환합니다.

getHostAbis()

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

void setPrioritizeHostConfig(boolean prioritizeHostConfig)

prioritize-host-config 옵션을 설정합니다.

boolean shouldModuleRun(ModuleDefinition module)

상수

ABI_OPTION

public static final String ABI_OPTION

상수 값: 'abi'

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

상수 값: 'active-mainline-parameter'

BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

상수 값: 'flag-overrides'

public static final String ENABLE_RESOLVE_SYM_LINKS

상수 값: 'enable-resolve-sym-links'

MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

상수 값: 'mainline-param'

MODULE_CHECKER_POST

public static final String MODULE_CHECKER_POST

상수 값: 'PostModuleChecker'

MODULE_CHECKER_PRE

public static final String MODULE_CHECKER_PRE

상수 값: 'PreModuleChecker'

MODULE_END_TIME

public static final String MODULE_END_TIME

상수 값: 'MODULE_END_TIME'

MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

상수 값: 'module-metadata-exclude-filter'

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

상수 값: 'module-metadata-include-filter'

MODULE_START_TIME

public static final String MODULE_START_TIME

상수 값: 'MODULE_START_TIME'

PARAMETER_KEY

public static final String PARAMETER_KEY

상수 값: 'parameter'

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

상수 값: 'preparer-whitelist'

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

상수 값: 'primary-abi-only'

RANDOM_SEED

public static final String RANDOM_SEED

상수 값: 'random-seed'

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

상수 값: 'runner-whitelist'

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

상수 값: 'skip-host-arch-check'

SKIP_STAGING_ARTIFACTS

public static final String SKIP_STAGING_ARTIFACTS

상수 값: 'skip-staging-artifacts'

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

상수 값: 'skip-system-status-check'

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

상수 값: 'stage-module-artifacts'

TEST_TYPE_KEY

public static final String TEST_TYPE_KEY

상수 값: 'test-type'

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

상수 값: 'performance'

TOKEN_KEY

public static final String TOKEN_KEY

상수 값: 'token'

필드

protected boolean mEnableResolveSymlinks

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

cleanUpSuiteSetup

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 모듈을 실행해야 하면 true, 그렇지 않으면 false입니다.

getAbis

public  getAbis (ITestDevice device)

호환성 테스트 AbiUtils.getAbisSupportedByCompatibility()와 테스트 대상 기기 모두에서 지원하는 ABI 집합을 가져옵니다.

매개변수
device ITestDevice

반환 값
테스트를 실행할 ABI 집합

생성 값
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

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

반환 값

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를 반환합니다. 아직 없는 경우 (ITTestSuite가 아직 샤딩되지 않은 경우) null을 반환합니다.

반환 값
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

반환 값
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

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

반환 값
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

반환 값
MultiMap<String, String>

getMultiDeviceStrategy

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

isRemoveModuleBuffering

public boolean isRemoveModuleBuffering ()

반환 값
boolean

isSplitting

public boolean isSplitting ()

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

반환 값
boolean

loadTests

public abstract  loadTests ()

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

반환 값

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

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

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

message String: 실행되지 않은 실패와 연결할 메시지입니다.

reportNotExecuted

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

setBuild

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

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

매개변수
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

매개변수
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

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

매개변수
collectors

setMultiDeviceStrategy

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

setSkipContext

public void setSkipContext (SkipContext skipContext)

매개변수
skipContext SkipContext

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)

허용 목록에 추가되지 않은 러너를 삭제하여 러너 허용 목록 필터링을 적용합니다. 구성에 러너가 여러 개 있는 경우 일부가 삭제되더라도 구성은 계속 실행됩니다.

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

allowedRunners : 현재 러너 허용 목록입니다.

반환 값
boolean 구성 모듈의 실행이 허용되면 true, 그렇지 않으면 false입니다.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

호스트 빌드 타겟 아키텍처에서 지원하는 ABI를 반환합니다. 테스트를 위해 노출됩니다.

반환 값

getHostAbis

protected  getHostAbis ()

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

반환 값

setPrioritizeHostConfig

protected void setPrioritizeHostConfig (boolean prioritizeHostConfig)

prioritize-host-config 옵션을 설정합니다.

매개변수
prioritizeHostConfig boolean: 가능하면 호스트 테스트를 실행하는 등 호스트 구성을 우선시하려면 true입니다.

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

매개변수
module ModuleDefinition

반환 값
boolean