ISandbox

public interface ISandbox

com.android.tradefed.sandbox.ISandbox


用于定义可用于运行调用的沙盒的接口。

摘要

公共方法

abstract String createClasspath(File workingDir)

根据 getTradefedSandboxEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, String[]) 返回的环境和工作目录创建类路径。

abstract IConfiguration createThinLauncherConfig(String[] args, IKeyStoreClient keyStoreClient, IRunUtil runUtil, File globalConfig)

特殊模式已与主运行断开连接:当某个配置似乎不存在于 我们将回退到精简启动器,尝试使用当前的 并填写工作目录,以便完整地在 版本化目录。

default discoverTests(IInvocationContext context, IConfiguration configuration)

prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener) 的子步骤,用于发现是否启用了 SandboxOptions.shouldUseTestDiscovery()

default discoverTests(IInvocationContext context, IConfiguration configuration, ITestLogger logger)
default IFolderBuildInfo fetchSandboxExtraArtifacts(IInvocationContext context, IConfiguration configuration, String[] args)

prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener) 的子步骤,用于提取沙盒所需的其他文件。

default File getTradefedSandboxEnvironment(IInvocationContext context, IConfiguration nonVersionedConfig, String[] args)

根据命令行参数返回要使用的沙盒环境 TF。

default File getTradefedSandboxEnvironment(IInvocationContext context, IConfiguration nonVersionedConfig, ITestLogger logger, String[] args)
abstract Exception prepareEnvironment(IInvocationContext context, IConfiguration configuration, ITestInvocationListener listener)

为沙盒正常运行做好准备。

abstract CommandResult run(TestInformation info, IConfiguration configuration, ITestLogger logger)

在设置的环境中运行沙盒。

abstract void tearDown()

清理可能已更改的所有状态、文件或环境。

公共方法

createClasspath

public abstract String createClasspath (File workingDir)

根据 getTradefedSandboxEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, String[]) 返回的环境和工作目录创建类路径。

参数
workingDir File:沙盒的当前工作目录。

返回
String 要使用的类路径。

抛出
ConfigurationException

createThinLauncherConfig

public abstract IConfiguration createThinLauncherConfig (String[] args, 
                IKeyStoreClient keyStoreClient, 
                IRunUtil runUtil, 
                File globalConfig)

特殊模式已与主运行断开连接:当某个配置似乎不存在于 我们将回退到精简启动器,尝试使用当前的 并填写工作目录,以便完整地在 版本化目录。

参数
args String:原始命令行参数。

keyStoreClient IKeyStoreClient:用于创建配置的当前密钥库客户端。

runUtil IRunUtil:要运行主机命令的当前 IRunUtil

globalConfig File:用于运行 TF 子进程的全局配置。

返回
IConfiguration 指向 NON_VERSIONED 对象的 TF 配置 XML 的文件。退货 如果无法创建精简启动器配置,则返回 null。

DiscoverTest

public  discoverTests (IInvocationContext context, 
                IConfiguration configuration)

prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener) 的子步骤,用于发现是否启用了 SandboxOptions.shouldUseTestDiscovery()

参数
context IInvocationContext:当前调用 IInvocationContext

configuration IConfiguration:要运行的命令的 IConfiguration

返回
所发现测试的映射;如果不受支持或失败,则为 null。

DiscoverTest

public  discoverTests (IInvocationContext context, 
                IConfiguration configuration, 
                ITestLogger logger)

参数
context IInvocationContext

configuration IConfiguration

logger ITestLogger

返回

fetchSandboxExtraArtifacts

public IFolderBuildInfo fetchSandboxExtraArtifacts (IInvocationContext context, 
                IConfiguration configuration, 
                String[] args)

prepareEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, com.android.tradefed.result.ITestInvocationListener) 的子步骤,用于提取沙盒所需的其他文件。

参数
context IInvocationContext:当前调用 IInvocationContext

configuration IConfiguration:要运行的命令的 IConfiguration

args String:命令行参数。

返回
IFolderBuildInfo 针对其他沙盒化文件提取的 build。

抛出
com.android.tradefed.build.BuildRetrievalError
com.android.tradefed.config.ConfigurationException
IOException
BuildRetrievalError
ConfigurationException

getTradefedSandboxEnvironment

public File getTradefedSandboxEnvironment (IInvocationContext context, 
                IConfiguration nonVersionedConfig, 
                String[] args)

根据命令行参数返回要使用的沙盒环境 TF。

参数
context IInvocationContext:父级的 IInvocationContext

nonVersionedConfig IConfiguration:表示非版本化对象的 IConfiguration

args String:命令行参数。

返回
File 一个包含 TF 沙盒环境 JAR 的 ERROR(/File) 目录。

getTradefedSandboxEnvironment

public File getTradefedSandboxEnvironment (IInvocationContext context, 
                IConfiguration nonVersionedConfig, 
                ITestLogger logger, 
                String[] args)

参数
context IInvocationContext

nonVersionedConfig IConfiguration

logger ITestLogger

args String

返回
File

prepareEnvironment

public abstract Exception prepareEnvironment (IInvocationContext context, 
                IConfiguration configuration, 
                ITestInvocationListener listener)

为沙盒正常运行做好准备。

参数
context IInvocationContext:当前调用 IInvocationContext

configuration IConfiguration:要运行的命令的 IConfiguration

listener ITestInvocationListener:当前调用 ITestInvocationListener,其中最终结果 都应该通过管道传输

返回
Exception 包含失败情况的 Exception。如果成功,则返回 Null。

得分

public abstract CommandResult run (TestInformation info, 
                IConfiguration configuration, 
                ITestLogger logger)

在设置的环境中运行沙盒。

参数
info TestInformation:描述调用的 TestInformation

configuration IConfiguration:要运行的命令的 IConfiguration

logger ITestLogger:一个 ITestLogger,我们可以在其中记录文件。

返回
CommandResult 包含沙盒运行状态和日志的 CommandResult

拆解

public abstract void tearDown ()

清理可能已更改的所有状态、文件或环境。