調用執行
public class InvocationExecution
extends Object
implements IInvocationExecution
java.lang.Object | |
↳ | com.android.tradefed.invoker.InvocationExecution |
描述所有調用步驟的類:構建下載,target_prep,運行測試,清理。可以擴展以覆蓋某些步驟的默認行為。步驟的順序由TestInvocation
驅動。
概要
領域 | |
---|---|
public static final String | ADB_VERSION_KEY |
public static final String | JAVA_CLASSPATH_KEY |
public static final String | JAVA_VERSION_KEY
|
公共建設者 | |
---|---|
InvocationExecution () |
公開方法 | |
---|---|
void | cleanUpBuilds (IInvocationContext context, IConfiguration config) 執行build_provider清理步驟。 |
void | doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception) 執行target_preparer和multi_target_preparer cleanUp步驟。 |
void | doSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener) 執行target_preparer和multi_target_preparer setUp步驟。 |
void | doTeardown (TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception) 執行target_preparer和multi_target_preparer拆卸步驟。 |
boolean | fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener) 執行調用的build_provider步驟。 |
void | reportLogs (ITestDevice device, ITestLogger listener, TestInvocation.Stage stage) 在調用的不同階段報告一些設備日誌。 |
final void | runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception) 為調用的每個設備部分調用 |
final void | runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger) 為調用的每個設備部分調用 |
void | runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener) 運行測試。 |
boolean | shardConfig ( IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger) 嘗試將配置分片為子配置,以將其重新安排為在多個資源上並行運行。 |
受保護的方法 | |
---|---|
IShardHelper | createShardHelper () 創建一個返回 |
void | customizeDevicePreInvocation ( IConfiguration config, IInvocationContext context) 在preInvocationSetup之前,有機會自定義一些設備。 |
String | getAdbVersion () 返回用於調用的adb版本。 |
void | setTestTag (IBuildInfo info, IConfiguration config) 處理在構建信息上設置測試標籤的問題。 |
領域
ADB_VERSION_KEY
public static final String ADB_VERSION_KEY
JAVA_CLASSPATH_KEY
public static final String JAVA_CLASSPATH_KEY
JAVA_VERSION_KEY
public static final String JAVA_VERSION_KEY
公共建設者
調用執行
public InvocationExecution ()
公開方法
cleanUpBuilds
public void cleanUpBuilds (IInvocationContext context, IConfiguration config)
執行build_provider清理步驟。與構建獲取相關聯。
參量 | |
---|---|
context | IInvocationContext :調用的IInvocationContext 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
doCleanUp
public void doCleanUp (IInvocationContext context, IConfiguration config, Throwable exception)
執行target_preparer和multi_target_preparer cleanUp步驟。設備是否清理乾淨。
參量 | |
---|---|
context | IInvocationContext :調用的IInvocationContext 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
exception | Throwable :測試運行時拋出的原始異常。 |
doSetup
public void doSetup (TestInformation testInfo, IConfiguration config, ITestLogger listener)
執行target_preparer和multi_target_preparer setUp步驟。是否運行測試所需的所有設備設置。
參量 | |
---|---|
testInfo | TestInformation :調用的TestInformation 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
listener | ITestLogger : ITestLogger 報告安裝失敗日誌。 |
投擲 | |
---|---|
BuildError | |
DeviceNotAvailableException | |
TargetSetupError |
doTeardown
public void doTeardown (TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)
執行target_preparer和multi_target_preparer拆卸步驟。設備是否與設置相關聯地拆除。
參量 | |
---|---|
testInfo | TestInformation :調用的TestInformation 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
logger | ITestLogger : ITestLogger 報告日誌。 |
exception | Throwable :測試運行時拋出的原始異常。 |
fetchBuild
public boolean fetchBuild (TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)
執行調用的build_provider步驟。
參量 | |
---|---|
testInfo | TestInformation :調用的TestInformation 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
rescheduler | IRescheduler : IRescheduler ,用於重新安排部分調用以在另一個資源上執行 |
listener | ITestInvocationListener : ITestInvocation 報告構建下載失敗。 |
退貨 | |
---|---|
boolean | 如果我們成功下載了構建,則為True,否則為false。 |
投擲 | |
---|---|
BuildRetrievalError | |
DeviceNotAvailableException |
reportLogs
public void reportLogs (ITestDevice device, ITestLogger listener, TestInvocation.Stage stage)
在調用的不同階段報告一些設備日誌。例如:logcat。
參量 | |
---|---|
device | ITestDevice :從中報告日誌的設備。 |
listener | ITestLogger :日誌記錄器。 |
stage | TestInvocation.Stage :我們所處的調用階段。 |
runDevicePostInvocationTearDown
public final void runDevicePostInvocationTearDown (IInvocationContext context, IConfiguration config, Throwable exception)
為調用的每個設備部分調用ITestDevice#postInvocationTearDown(Throwable)
。
參量 | |
---|---|
context | IInvocationContext :調用的IInvocationContext 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
exception | Throwable :測試運行時拋出的原始異常(如果有)。 |
runDevicePreInvocationSetup
public final void runDevicePreInvocationSetup (IInvocationContext context, IConfiguration config, ITestLogger logger)
為調用的每個設備部分調用ITestDevice#preInvocationSetup(IBuildInfo)
。
參量 | |
---|---|
context | IInvocationContext :調用的IInvocationContext 。 |
config | IConfiguration :此測試運行的IConfiguration 。 |
logger | ITestLogger : ITestLogger 報告日誌。 |
投擲 | |
---|---|
DeviceNotAvailableException | |
TargetSetupError |
運行測試
public void runTests (TestInformation info, IConfiguration config, ITestInvocationListener listener)
運行測試。
參量 | |
---|---|
info | TestInformation :用於運行測試的TestInformation 。 |
config | IConfiguration :要運行的IConfiguration |
listener | ITestInvocationListener :測試結果的ITestInvocationListener |
shardConfig
public boolean shardConfig (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
嘗試將配置分片為子配置,以將其重新安排為在多個資源上並行運行。
如果分片計數大於1,它將通過設置分片索引並重新計劃它們,簡單地為每個分片創建配置。如果未設置分片計數,它將回IShardHelper#shardConfig
。
參量 | |
---|---|
config | IConfiguration :當前的IConfiguration 。 |
testInfo | TestInformation :保存測試信息的TestInformation 。 |
rescheduler | IRescheduler : IRescheduler 。 |
logger | ITestLogger : ITestLogger 用於在分片期間記錄文件。 |
退貨 | |
---|---|
boolean | 如果測試已分片,則為true。否則返回false |
受保護的方法
createShardHelper
protected IShardHelper createShardHelper ()
創建一個返回IShardHelper
以使用IShardHelper
。
退貨 | |
---|---|
IShardHelper |
customDevicePreInvocation
protected void customizeDevicePreInvocation (IConfiguration config, IInvocationContext context)
在preInvocationSetup之前,有機會自定義一些設備。
參量 | |
---|---|
config | IConfiguration :調用的配置。 |
context | IInvocationContext :當前調用上下文。 |
getAdbVersion
protected String getAdbVersion ()
返回用於調用的adb版本。
退貨 | |
---|---|
String |
setTestTag
protected void setTestTag (IBuildInfo info, IConfiguration config)
處理在構建信息上設置測試標籤的問題。
參量 | |
---|---|
info | IBuildInfo |
config | IConfiguration |