沙盒

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 ()

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

公共方法

创建类路径

public abstract String createClasspath (File workingDir)

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

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

退货
String要使用的类路径。

投掷
ConfigurationException

创建ThinLauncherConfig

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。

发现测试

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。

发现测试

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获取的附加沙盒文件的构建。

投掷
com.android.tradefed.build.BuildRetrievalError
com.android.tradefed.config.ConfigurationException
IO异常
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

准备环境

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 ()

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