ModuleDefinition

public class ModuleDefinition
extends Object implements ITestCollector

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


測試執行設定的容器。這個類別是準備及執行測試的輔助工具。

摘要

欄位

public static final String ISOLATION_COST

public static final String MODULE_ABI

public static final String MODULE_CACHED

如果測試模組結果已快取,則會將此屬性設為 true。

public static final String MODULE_CONTROLLER

public static final String MODULE_EXTERNAL_DEPENDENCIES

public static final String MODULE_ID

模組 ID 是用於在 testRunStart 期間唯一識別模組的名稱。

public static final String MODULE_INVOCATION_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String MODULE_ISOLATED

如果模組是在新準備好的裝置上執行,則會將此屬性設為 true。

public static final String MODULE_NAME

模組名稱是與模組相關聯的基礎名稱,通常來自模組載入的 Xml TF 設定檔。

public static final String MODULE_PARAMETERIZATION

public static final String MODULE_SKIPPED

如果已略過測試模組,這個屬性會設為 true

public static final String MODULE_TEST_COUNT

public static final String PREPARATION_TIME

public static final String RETRY_FAIL_COUNT

public static final String RETRY_SUCCESS_COUNT

public static final String RETRY_TIME

public static final String SPARSE_MODULE

如果只回報模組層級事件,則這個屬性會設為 True。

public static final String TEAR_DOWN_TIME

public static final String TEST_TIME

公用建構函式

ModuleDefinition()
ModuleDefinition(String name, tests, preparersPerDevice, multiPreparers, IConfiguration moduleConfig)

建構函式

ModuleDefinition(String name, tests, preparersPerDevice, suitePreparersPerDevice, multiPreparers, IConfiguration moduleConfig)

建構函式

公用方法

int compareTo(ModuleDefinition moduleDef)

String getId()

傳回不重複的模組名稱。

Integer getIntraModuleShardCount()
Integer getIntraModuleShardIndex()
IConfiguration getModuleConfiguration()
IInvocationContext getModuleInvocationContext()

傳回與模組相關聯的 IInvocationContext

getRequiredTokens(TestInformation testInfo)
long getRuntimeHint()

傳回執行模組中所有測試的約略時間。

boolean hasModuleFailed()

如果已在模組上呼叫 testRunFailure,則傳回 True *

int neededDevices()

傳回預期執行此測試的裝置數量。

int numTests()

傳回目前等待執行的 IRemoteTest 數量。

final void reportNotExecuted(ITestInvocationListener listener, String message)

回報完全未執行的模組。

final void run(TestInformation moduleInfo, ITestInvocationListener listener, moduleLevelListeners)

執行模組中包含的所有 IRemoteTest,並在前後使用所有預備程序來設定及清理裝置。

final void run(TestInformation moduleInfo, ITestInvocationListener listener, moduleLevelListeners, int maxRunLimit)

執行模組中包含的所有 IRemoteTest,並使用前後所有準備工具來設定及清理裝置。

final void run(TestInformation moduleInfo, ITestInvocationListener listener)

執行模組中包含的所有 IRemoteTest,並使用前後所有準備工具來設定及清理裝置。

Throwable runPreparation(boolean includeSuitePreparers)

執行測試的準備工具,包括套件層級的準備工具 (如有指定)。

void setBuild(IBuildInfo build)

插入要在測試期間使用的 IBuildInfo

void setCollectTestsOnly(boolean collectTestsOnly)

啟用或停用測試收集模式

void setDevice(ITestDevice device)

插入要在測試期間使用的 ITestDevice

void setEnableDynamicDownload(boolean enableDynamicDownload)

是否要在模組層級啟用動態下載功能。

void setIntraModuleInformation(int shardCount, int shardIndex)
void setLogSaver(ILogSaver logSaver)

將叫用記錄儲存器傳遞至模組,以便在必要時使用。

final void setMergeAttemps(boolean mergeAttempts)

設定是否要合併結果。

void setMetricCollectors( collectors)

將模組要使用的 IMetricCollector 清單插入。

void setRecoverVirtualDevice(boolean recoverVirtualDevice)

套裝組合應可復原虛擬裝置。

final void setRetryDecision(IRetryDecision decision)

設定用於模組內重試的 IRetryDecision

boolean shouldRecoverVirtualDevice()

傳回是否應復原虛擬裝置。

String toString()

void transferSuiteLevelOptions(IConfiguration mSuiteConfiguration)

複製一些套裝軟體層級設定

保護方法

boolean hasTests()

如果模組仍有要執行的 IRemoteTest,則傳回 True。

欄位

ISOLATION_COST

public static final String ISOLATION_COST

MODULE_ABI

public static final String MODULE_ABI

MODULE_CACHED

public static final String MODULE_CACHED

如果測試模組結果已快取,則會將此屬性設為 true。

MODULE_CONTROLLER

public static final String MODULE_CONTROLLER

MODULE_EXTERNAL_DEPENDENCIES

public static final String MODULE_EXTERNAL_DEPENDENCIES

MODULE_ID

public static final String MODULE_ID

模組 ID 是 testRunStart 期間用來識別唯一模組的名稱。這通常會是 MODULE_ABI + MODULE_NAME 的組合。

MODULE_INVOCATION_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String MODULE_INVOCATION_ATTRIBUTE_FLAG_OVERRIDES_KEY

模組化

public static final String MODULE_ISOLATED

如果模組是在全新準備的裝置上執行,則這個屬性會設為 true。

MODULE_NAME

public static final String MODULE_NAME

模組名稱是與模組相關聯的基礎名稱,通常來自載入模組的 Xml TF 設定檔。

MODULE_PARAMETERIZATION

public static final String MODULE_PARAMETERIZATION

MODULE_SKIPPED

public static final String MODULE_SKIPPED

如果略過測試模組,這個屬性會設為 true

MODULE_TEST_COUNT 個

public static final String MODULE_TEST_COUNT

PREPARATION_TIME

public static final String PREPARATION_TIME

RETRY_FAIL_COUNT

public static final String RETRY_FAIL_COUNT

RETRY_SUCCESS_COUNT

public static final String RETRY_SUCCESS_COUNT

RETRY_TIME

public static final String RETRY_TIME

SPARSE_MODULE

public static final String SPARSE_MODULE

如果只回報模組層級事件,這個屬性會設為 true。

TEAR_DOWN_TIME

public static final String TEAR_DOWN_TIME

TEST_TIME

public static final String TEST_TIME

公用建構函式

ModuleDefinition

public ModuleDefinition ()

ModuleDefinition

public ModuleDefinition (String name, 
                 tests, 
                 preparersPerDevice, 
                 multiPreparers, 
                IConfiguration moduleConfig)

建構函式

參數
name String:測試設定的專屬名稱。

tests :需要執行的 IRemoteTest 清單。

preparersPerDevice :用於設定裝置的 ITargetPreparer 清單。

multiPreparers

moduleConfig IConfiguration:基礎模組設定的 IConfiguration

ModuleDefinition

public ModuleDefinition (String name, 
                 tests, 
                 preparersPerDevice, 
                 suitePreparersPerDevice, 
                 multiPreparers, 
                IConfiguration moduleConfig)

建構函式

參數
name String:測試設定的專屬名稱。

tests :需要執行的 IRemoteTest 清單。

preparersPerDevice :用於設定裝置的 ITargetPreparer 清單。

suitePreparersPerDevice

multiPreparers

moduleConfig IConfiguration:基礎模組設定的 IConfiguration

公用方法

compareTo

public int compareTo (ModuleDefinition moduleDef)

參數
moduleDef ModuleDefinition

傳回
int

getId

public String getId ()

傳回不重複的模組名稱。

傳回
String

getIntraModuleShardCount

public Integer getIntraModuleShardCount ()

傳回
Integer

getIntraModuleShardIndex

public Integer getIntraModuleShardIndex ()

傳回
Integer

getModuleConfiguration

public IConfiguration getModuleConfiguration ()

傳回
IConfiguration

getModuleInvocationContext

public IInvocationContext getModuleInvocationContext ()

傳回與模組相關聯的 IInvocationContext

傳回
IInvocationContext

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

參數
testInfo TestInformation

傳回

getRuntimeHint

public long getRuntimeHint ()

傳回執行模組中所有測試的約略時間。

傳回
long

hasModuleFailed

public boolean hasModuleFailed ()

如果已在模組上呼叫 testRunFailure,則傳回 True *

傳回
boolean

所需裝置

public int neededDevices ()

傳回預計執行這項測試的裝置數量。

傳回
int

numTests

public int numTests ()

傳回目前等待執行的 IRemoteTest 數量。

傳回
int

reportNotExecuted

public final void reportNotExecuted (ITestInvocationListener listener, 
                String message)

回報完全未執行的模組。

參數
listener ITestInvocationListener

message String

得分

public final void run (TestInformation moduleInfo, 
                ITestInvocationListener listener, 
                 moduleLevelListeners)

執行模組中包含的所有 IRemoteTest,並在前後使用所有預備程序來設定及清理裝置。

參數
moduleInfo TestInformation

listener ITestInvocationListener:用於回報結果的 ITestInvocationListener

moduleLevelListeners :模組層級的事件監聽器清單。

擲回
DeviceNotAvailableException 裝置離線時。

得分

public final void run (TestInformation moduleInfo, 
                ITestInvocationListener listener, 
                 moduleLevelListeners, 
                int maxRunLimit)

執行模組中包含的所有 IRemoteTest,並在前後使用所有預備程序來設定及清理裝置。

參數
moduleInfo TestInformation:模組的 TestInformation

listener ITestInvocationListener:用於回報結果的 ITestInvocationListener

moduleLevelListeners :模組層級的事件監聽器清單。

maxRunLimit int:每個測試案例的執行次數上限。

擲回
DeviceNotAvailableException 裝置離線時。

得分

public final void run (TestInformation moduleInfo, 
                ITestInvocationListener listener)

執行模組中包含的所有 IRemoteTest,並使用前後所有準備工具來設定及清理裝置。

參數
moduleInfo TestInformation

listener ITestInvocationListener:用於回報結果的 ITestInvocationListener

擲回
DeviceNotAvailableException 裝置離線時。

執行準備

public Throwable runPreparation (boolean includeSuitePreparers)

執行測試的準備工具,包括套件層級準備工具 (如果有指定)。

參數
includeSuitePreparers boolean:設為 true 即可執行套件層級的準備工具。

傳回
Throwable 執行準備工具時引發任何例外狀況的 Throwable

setBuild

public void setBuild (IBuildInfo build)

插入要在測試期間使用的 IBuildInfo

參數
build IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean collectTestsOnly)

啟用或停用測試收集模式

setDevice

public void setDevice (ITestDevice device)

插入要在測試期間使用的 ITestDevice

參數
device ITestDevice

setEnableDynamicDownload

public void setEnableDynamicDownload (boolean enableDynamicDownload)

是否在模組層級啟用動態下載。

參數
enableDynamicDownload boolean

setIntraModuleInformation

public void setIntraModuleInformation (int shardCount, 
                int shardIndex)

參數
shardCount int

shardIndex int

setLogSaver

public void setLogSaver (ILogSaver logSaver)

將叫用記錄儲存器傳遞至模組,以便在必要時使用。

參數
logSaver ILogSaver

設定 MergeAttemps

public final void setMergeAttemps (boolean mergeAttempts)

設定是否要合併結果。

參數
mergeAttempts boolean

setMetricCollectors

public void setMetricCollectors ( collectors)

將模組要使用的 IMetricCollector 清單插入。

參數
collectors

setRecoverVirtualDevice

public void setRecoverVirtualDevice (boolean recoverVirtualDevice)

組合應復原虛擬裝置。

參數
recoverVirtualDevice boolean

setRetryDecision

public final void setRetryDecision (IRetryDecision decision)

設定要用於模組內重試的 IRetryDecision

參數
decision IRetryDecision

應復原 VirtualDevice

public boolean shouldRecoverVirtualDevice ()

傳回是否應復原虛擬裝置。

傳回
boolean

toString

public String toString ()

傳回
String

TransferSuiteLevelOptions

public void transferSuiteLevelOptions (IConfiguration mSuiteConfiguration)

複製一些套裝程式層級設定

參數
mSuiteConfiguration IConfiguration

保護方法

hasTests

protected boolean hasTests ()

如果模組仍有要執行的 IRemoteTest 池,則傳回 True。否則為 False。

傳回
boolean