呼叫執行

public interface IInvocationExecution

com.android.tradefed.invoker.IInitationExecution


描述將作為呼叫的一部分完成的操作的介面。呼叫TestInvocation本身確保調用的順序。

概括

公共方法

default void cleanUpBuilds ( IInvocationContext context, IConfiguration config)

執行 build_provider 清理步驟。

default void doCleanUp ( IInvocationContext context, IConfiguration config, Throwable exception)

執行 target_preparer 和 multi_target_preparer cleanUp 步驟。

default void doSetup ( TestInformation testInfo, IConfiguration config, ITestLogger logger)

執行 target_preparer 和 multi_target_preparer 設定步驟。

default void doTeardown ( TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)

執行 target_preparer 和 multi_target_preparer 拆卸步驟。

default boolean fetchBuild ( TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)

執行呼叫的 build_provider 步驟。

abstract void reportLogs ( ITestDevice device, ITestLogger logger, TestInvocation.Stage stage)

報告調用不同階段的一些設備日誌。

default void runDevicePostInvocationTearDown ( IInvocationContext context, IConfiguration config, Throwable exception)

為呼叫的每個裝置部分呼叫ITestDevice#postInvocationTearDown(Throwable)

default void runDevicePreInvocationSetup ( IInvocationContext context, IConfiguration config, ITestLogger logger)

為呼叫的每個裝置部分呼叫ERROR(ITestDevice#preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice#preInvocationSetup(IBuildInfo))

default void runTests ( TestInformation info, IConfiguration config, ITestInvocationListener listener)

運行測試。

default boolean shardConfig ( IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)

嘗試將配置分割為子配置,以便重新安排在多個資源上並行運行。

公共方法

清理構建

public void cleanUpBuilds (IInvocationContext context, 
                IConfiguration config)

執行 build_provider 清理步驟。與構建獲取相關。

參數
context IInvocationContext :呼叫的IInvocationContext

config IConfiguration :本次測試運行的IConfiguration

清理

public void doCleanUp (IInvocationContext context, 
                IConfiguration config, 
                Throwable exception)

執行 target_preparer 和 multi_target_preparer cleanUp 步驟。設備是否清理乾淨。

參數
context IInvocationContext :呼叫的IInvocationContext

config IConfiguration :本次測試運行的IConfiguration

exception Throwable :測試運行時拋出的原始異常。

執行設定

public void doSetup (TestInformation testInfo, 
                IConfiguration config, 
                ITestLogger logger)

執行 target_preparer 和 multi_target_preparer 設定步驟。是否設定了運行測試所需的所有設備。

參數
testInfo TestInformation :呼叫的TestInformation

config IConfiguration :本次測試運行的IConfiguration

logger ITestLogger :報告設定失敗日誌的ITestLogger

投擲
com.android.tradefed.targetprep.TargetSetupError
com.android.tradefed.targetprep.BuildError
com.android.tradefed.device.DeviceNotAvailableException
BuildError
DeviceNotAvailableException
TargetSetupError

拆解

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 :測試運行時拋出的原始異常。

投擲
可投擲

獲取構建

public boolean fetchBuild (TestInformation testInfo, 
                IConfiguration config, 
                IRescheduler rescheduler, 
                ITestInvocationListener listener)

執行呼叫的 build_provider 步驟。

參數
testInfo TestInformation :呼叫的TestInformation

config IConfiguration :本次測試運行的IConfiguration

rescheduler IReschedulerIRescheduler ,用於重新安排呼叫的部分以便在另一個資源上執行

listener ITestInvocationListener :報告建置下載失敗的ITestInvocation

退貨
boolean如果我們成功下載了建置版本,則為 true,否則為 false。

投擲
com.android.tradefed.build.BuildRetrievalError
com.android.tradefed.device.DeviceNotAvailableException
BuildRetrievalError
DeviceNotAvailableException

報告日誌

public abstract void reportLogs (ITestDevice device, 
                ITestLogger logger, 
                TestInvocation.Stage stage)

報告調用不同階段的一些設備日誌。例如:logcat。

參數
device ITestDevice :報告日誌的設備。

logger ITestLogger :日誌記錄器。

stage TestInvocation.Stage :我們所處的呼叫階段。

runDevicePostInspirationTearDown

public void runDevicePostInvocationTearDown (IInvocationContext context, 
                IConfiguration config, 
                Throwable exception)

為呼叫的每個裝置部分呼叫ITestDevice#postInvocationTearDown(Throwable)

參數
context IInvocationContext :呼叫的IInvocationContext

config IConfiguration :本次測試運行的IConfiguration

exception Throwable :測試運行時拋出的原始異常(如果有)。

運行設備預調用設定

public void runDevicePreInvocationSetup (IInvocationContext context, 
                IConfiguration config, 
                ITestLogger logger)

為呼叫的每個裝置部分呼叫ERROR(ITestDevice#preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice#preInvocationSetup(IBuildInfo))

參數
context IInvocationContext :呼叫的IInvocationContext

config IConfiguration :本次測試運行的IConfiguration

logger ITestLogger :報告日誌的ITestLogger

投擲
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.targetprep.TargetSetupError
DeviceNotAvailableException
TargetSetupError

運行測試

public void runTests (TestInformation info, 
                IConfiguration config, 
                ITestInvocationListener listener)

運行測試。

參數
info TestInformation :用於執行測試的TestInformation

config IConfiguration :要運行的IConfiguration

listener ITestInvocationListener :測試結果的ITestInvocationListener

投擲
可投擲

分片配置

public boolean shardConfig (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

嘗試將配置分割為子配置,以便重新安排在多個資源上並行運行。

如果分片計數大於 1,它將透過設定分片索引並重新安排它們來簡單地為每個分片建立配置。如果未設定分片計數,它將回退到IShardHelper#shardConfig

參數
config IConfiguration :目前的IConfiguration

testInfo TestInformation :儲存測試資訊的TestInformation

rescheduler IReschedulerIRescheduler

logger ITestLoggerITestLogger用於在分片期間記錄檔案。

退貨
boolean如果測試被分片則為 true。否則回傳false