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


テストスイートの実行に使用される抽象クラス。このクラスは、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_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

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 REBOOT_BEFORE_TEST

public static final String RUNNER_WHITELIST

public static final String SKIP_HOST_ARCH_CHECK

public static final String SKIP_SYSTEM_STATUS_CHECKER

public static final String TOKEN_KEY

パブリック コンストラクタ

ITestSuite()

パブリック メソッド

void addModuleMetadataExcludeFilters(MultiMap<String, String> filters)
void addModuleMetadataIncludeFilters(MultiMap<String, String> filters)
final void enableRebootBeforeTest()

reboot-before-test を true に設定します。

getAbis(ITestDevice device)

互換性テスト AbiUtils.getAbisSupportedByCompatibility() とテスト対象デバイスの両方でサポートされている ABI のセットを取得します。

static getAbisForBuildTargetArchFromSuite()

TestSuiteInfo から可能な ABI を返します。

IBuildInfo getBuildInfo()

ITestSuite の実装では、テストを読み込むためにビルド情報が必要になる場合があります。

final IConfiguration getConfiguration()

呼び出し IConfiguration を返します。

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

テスト対象デバイスを入手します。

ModuleDefinition getDirectModule()

直接実行する ModuleDefinition を返します。まだない場合(ITestSuite がまだシャーディングされていない場合)は null を返します。

IInvocationContext getInvocationContext()

呼び出しコンテキストを返します。

final String getRequestedAbi()

オプション -a または --abi でリクエストされた abi を返します。

getRequiredTokens()
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)
void setBuild(IBuildInfo buildInfo)

void setCollectTestsOnly(boolean shouldCollectTest)

コレクタ専用モードでテストスイートを実行します。この場合、すべてのサブテストでこのインターフェースを実装する必要があります。

void setConfiguration(IConfiguration configuration)

使用中の IConfiguration を挿入します。

void setDevice(ITestDevice device)

テスト対象デバイスを挿入します。

void setInvocationContext(IInvocationContext invocationContext)

void setInvocationInjector(Injector injector)

呼び出しから現在の Guice Injector を取得します。

void setMetricCollectors( collectors)

テスト実行用に定義された IMetricCollector のリストを設定する。

void setPrimaryAbiRun(boolean primaryAbiRun)

mPrimaryAbiRun の値を設定します

void setShouldMakeDynamicModule(boolean dynamicModule)

分散シャーディングを行う場合、プールでテストを共有する ModuleDefinition は使用できません。モジュール内シャーディングが機能しないため、無効にできます。

void setSystemStatusChecker( systemCheckers)

テストの構成から ISystemStatusChecker を設定します。

void setTestLogger(ITestLogger testLogger)

split(Integer shardCountHint, TestInformation testInfo)

split(int) の代替バージョン。シャードを作成する親からの初期情報を含む TestInformation も提供します。

保護されたメソッド

createModuleListeners()

ModuleListener レベルに適用される ITestInvocationListener のリストを返します。

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

メタデータ フィルタを構成に適用し、構成を実行する必要があるかどうかを確認します。

boolean filterByRunnerType(IConfiguration config, allowedRunners)

ランナーのホワイトリスト フィルタを適用し、ホワイトリストに登録されていないランナーを削除します。

getAbisForBuildTargetArch()

ホストビルド ターゲット アーキテクチャでサポートされている ABI を返します。

getHostAbis()

ホストマシンの ABI を返します。

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_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

PARAMETER_KEY

public static final String PARAMETER_KEY

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

RANDOM_SEED

public static final String RANDOM_SEED

REBOOT_BEFORE_TEST

public static final String REBOOT_BEFORE_TEST

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

TOKEN_KEY

public static final String TOKEN_KEY

パブリック コンストラクタ

ITestSuite

public ITestSuite ()

パブリック メソッド

addModuleMetadataExcludeFilters

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

パラメータ
filters MultiMap

addModuleMetadataIncludeFilters

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

パラメータ
filters MultiMap

enableRebootBeforeTest

public final void enableRebootBeforeTest ()

reboot-before-test を true に設定します。

getAbis

public  getAbis (ITestDevice device)

互換性テスト AbiUtils.getAbisSupportedByCompatibility() とテスト対象デバイスの両方でサポートされている ABI のセットを取得します。

パラメータ
device ITestDevice

戻り値
テストを実行する ABI のセット

例外
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 を返します。まだない場合(ITestSuite がまだシャーディングされていない場合)は null を返します。

戻り値
ModuleDefinition

getInvocationContext

public IInvocationContext getInvocationContext ()

呼び出しコンテキストを返します。

戻り値
IInvocationContext

getRequestedAbi

public final String getRequestedAbi ()

オプション -a または --abi でリクエストされた abi を返します。

戻り値
String

getRequiredTokens

public  getRequiredTokens ()

戻り値

getRuntimeHint

public long getRuntimeHint ()

テストの予想実行時間をミリ秒単位で返します。この時間は、シャーディングされた実行のロード バランシングに使用されます。

戻り値
long

getTestsDir

public File getTestsDir ()

戻り値
File

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

listener 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

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

パラメータ
invocationContext IInvocationContext

setInvocationInjector

public void setInvocationInjector (Injector injector)

呼び出しから現在の Guice Injector を取得します。これにより、モジュールのオブジェクト インジェクションを続行できます。

パラメータ
injector Injector

setMetricCollectors

public void setMetricCollectors ( collectors)

テスト実行用に定義された IMetricCollector のリストを設定します。

パラメータ
collectors

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)

パラメータ
testLogger ITestLogger

分割

public  split (Integer shardCountHint, 
                TestInformation testInfo)

split(int) の代替バージョン。シャードを作成する親からの初期情報を含む TestInformation も提供します。シャーディング中にデバイス情報やビルド情報などにアクセスする必要がある場合に便利です。

パラメータ
shardCountHint Integer: 試行されたシャードの数。

testInfo TestInformation: 親の TestInformation

戻り値
個別に実行されるサブテストのコレクション。テストが現在シャーディング可能でない場合は null

保護されたメソッド

createModuleListeners

protected  createModuleListeners ()

ModuleListener レベルに適用される ITestInvocationListener のリストを返します。これらのリスナーはモジュールごとに再利用されます。再インスタンス化されないため、内部状態を想定しないでください。

戻り値

filterByConfigMetadata

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

メタデータ フィルタを構成に適用し、構成を実行する必要があるかどうかを確認します。

パラメータ
config IConfiguration: 評価対象の IConfiguration

include MultiMap: メタデータの包含フィルタ

exclude MultiMap: メタデータ除外フィルタ

戻り値
boolean モジュールを実行する必要がある場合は true、そうでない場合は false。

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

ランナーのホワイトリスト フィルタを適用し、ホワイトリストに登録されていないランナーを削除します。構成に複数のランナーがある場合、一部のランナーが削除されても、構成は引き続き実行されます。

パラメータ
config IConfiguration: 評価対象の IConfiguration

allowedRunners : 現在のランナーの許可リスト。

戻り値
boolean 構成モジュールの実行が許可されている場合は true、それ以外の場合は false。

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

ホストビルド ターゲット アーキテクチャでサポートされている ABI を返します。テスト用に公開されています。

戻り値

getHostAbis

protected  getHostAbis ()

ホストマシンの ABI を返します。

戻り値

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

パラメータ
module ModuleDefinition

戻り値
boolean