IBuildInfo

public interface IBuildInfo

com.android.tradefed.build.IBuildInfo


保存有关被测 build 的信息。

摘要

常量

String REMOTE_FILE_PREFIX

名称中使用的前缀,表示文件被设置为延迟下载。

String REMOTE_FILE_VERSION

远程文件未进行版本控制。

String UNKNOWN_BUILD_ID

build ID 未知时的默认值。

公共方法

default void addAppPackageFile(File appPackageFile, String version)

添加本地 APK 文件及其关联版本。

abstract void addBuildAttribute(String attributeName, String attributeValue)

添加 build 属性。

default void addBuildAttributes( buildAttributes)

添加 build 属性

default void allowStagingRemoteFile(boolean stageRemoteFile)

设置允许暂存远程文件的权限。

abstract void cleanUp()

清理所有临时 build 文件

abstract void cleanUp( doNotDelete)

cleanUp() 的版本(其中某些文件不会被删除)。

abstract IBuildInfo clone()

克隆 IBuildInfo 对象。

default getAppPackageFiles()

获取一组本地应用 APK 文件及其版本的副本。

abstract getBuildAttributes()

获取一组描述 build 的其他属性的名称-值对。

abstract String getBuildBranch()

可选方法,用于返回要测试的 build 曾经是哪个源代码控制分支

abstract String getBuildFlavor()

可选方法,用于返回要测试的 build 的类型。

abstract String getBuildId()

返回被测 build 的唯一标识符。

abstract String getBuildTargetName()

返回被测 build 的全名。

abstract String getDeviceSerial()
abstract File getFile(String name)

用于检索具有给定名称的文件的辅助方法。

default File getFile(BuildInfoKey.BuildInfoFileKey key)

用于检索具有指定 BuildInfoFileKey 的文件的辅助方法。

abstract getFiles()

返回此 BuildInfo 中存储的所有 VersionedFile

abstract getProperties()

返回 IBuildInfo 上当前设置的属性的副本。

default getRemoteFiles()

获取延迟下载的构建工件的路径。

abstract String getTestTag()

为所运行的测试返回唯一的名称。

default String getVersion(BuildInfoKey.BuildInfoFileKey key)

使用给定 BuildInfoFileKey 检索文件版本的辅助方法。

abstract String getVersion(String name)

用于检索具有给定名称的文件版本的辅助方法。

default VersionedFile getVersionedFile(BuildInfoKey.BuildInfoFileKey key)

用于检索具有给定 BuildInfoFileKeyVersionedFile 的辅助方法。

default VersionedFile getVersionedFile(String name)

用于检索具有给定名称的 VersionedFile 的辅助方法。

default getVersionedFileKeys()

返回可通过 getFile(BuildInfoFileKey) 查询 VersionedFile 的一组键。

default getVersionedFiles(BuildInfoKey.BuildInfoFileKey key)

用于检索与给定 BuildInfoFileKey 关联的 VersionedFile 列表的辅助方法。

default void removeBuildAttribute(String attributeName)

从跟踪中移除给定的 attributeName。

abstract void setBuildBranch(String branch)

设置 build 分支

abstract void setBuildFlavor(String buildFlavor)

设置 build 变种。

abstract void setBuildId(String buildId)

设置被测 build 的唯一标识符。

abstract void setDeviceSerial(String serial)

设置与此 build 关联的 ITestDevice 序列号。

abstract void setFile(String name, File file, String version)

在此 build 信息中存储具有给定名称的文件。

default void setFile(BuildInfoKey.BuildInfoFileKey key, File file, String version)

存储在此 build 信息中指定了 BuildInfoFileKey 的文件。

abstract void setProperties(BuildInfoProperties... properties)

IBuildInfo 实例设置 BuildInfoProperties

abstract void setTestTag(String testTag)

为要运行的测试设置唯一名称。

default File stageRemoteFile(String fileName, File workingDir)

在 build 信息的根目录中暂存一个属于远程文件的文件。

default BuildInformation.BuildInfo toProto()

将 BuildInfo 实例序列化为 protobuf。

常量

REMOTE_FILE_PREFIX

public static final String REMOTE_FILE_PREFIX

名称中使用的前缀,表示文件被设置为延迟下载。

常量值: “remote_file:”

REMOTE_FILE_VERSION

public static final String REMOTE_FILE_VERSION

远程文件未进行版本控制。

常量值: ”

未知版本 ID

public static final String UNKNOWN_BUILD_ID

build ID 未知时的默认值。

常量值: “-1”

公共方法

addAppPackageFile

public void addAppPackageFile (File appPackageFile, 
                String version)

添加本地 APK 文件及其关联版本。请注意,系统会将 APK 从 getAppPackageFiles()(按此方法添加它们的顺序)。

参数
appPackageFile File

version String

addBuildAttribute

public abstract void addBuildAttribute (String attributeName, 
                String attributeValue)

添加 build 属性。这不允许覆盖现有 attributeName。

参数
attributeName String:唯一属性名称

attributeValue String:属性值

addBuildAttributes

public void addBuildAttributes ( buildAttributes)

添加 build 属性

参数
buildAttributes :要添加的属性的映射

allowStagingRemoteFile

public void allowStagingRemoteFile (boolean stageRemoteFile)

设置允许暂存远程文件的权限。

参数
stageRemoteFile boolean

清理

public abstract void cleanUp ()

清理所有临时 build 文件

清理

public abstract void cleanUp ( doNotDelete)

cleanUp() 的版本(其中某些文件不会被删除)。

参数
doNotDelete

克隆

public abstract IBuildInfo clone ()

克隆 IBuildInfo 对象。

返回
IBuildInfo

getAppPackageFiles

public  getAppPackageFiles ()

获取一组本地应用 APK 文件及其版本的副本。退货订单 与将 APK 添加到 IAppBuildInfo 的顺序一致。

返回

getBuildAttributes

public abstract  getBuildAttributes ()

获取一组描述 build 的其他属性的名称-值对。

返回
build 属性的 ERROR(/Map)。不会是 null,但可以为空。

getBuildBranch

public abstract String getBuildBranch ()

可选方法,用于返回要测试的 build 曾经是哪个源代码控制分支

返回
String build 分支或 null(如果未设置/不适用)

getBuildFlavor

public abstract String getBuildFlavor ()

可选方法,用于返回要测试的 build 的类型。

Android 平台 build 的一种常见实现是返回 (build product)-(build os)-(build 变体)。 例如 general-linux-userdebug

返回
String build 变种或 null(如果未设置/不适用)

getBuildId

public abstract String getBuildId ()

返回被测 build 的唯一标识符。不得为 null。默认为 UNKNOWN_BUILD_ID

返回
String

getBuildTargetName

public abstract String getBuildTargetName ()

返回被测 build 的全名。

一种常见的实现是通过 build 变种和分支名称[ie (分支名称)-(build 变种)]

返回
String

getDeviceSerial

public abstract String getDeviceSerial ()

返回
String 执行此构建的 ITestDevice 序列。如果没有设备与此 build 关联,则返回 null

getFile

public abstract File getFile (String name)

用于检索具有给定名称的文件的辅助方法。

返回
File 图片文件或 null(如果未找到)

getFile

public File getFile (BuildInfoKey.BuildInfoFileKey key)

用于检索具有指定 BuildInfoFileKey 的文件的辅助方法。

参数
key BuildInfoKey.BuildInfoFileKey:请求的 BuildInfoFileKey

返回
File 图片文件或 null(如果未找到)

getFiles

public abstract  getFiles ()

返回此 BuildInfo 中存储的所有 VersionedFile

返回

getProperties

public abstract  getProperties ()

返回 IBuildInfo 上当前设置的属性的副本。

返回

getRemoteFiles

public  getRemoteFiles ()

获取延迟下载的构建工件的路径。

返回

getTestTag

public abstract String getTestTag ()

为所运行的测试返回唯一的名称。

返回
String

getVersion

public String getVersion (BuildInfoKey.BuildInfoFileKey key)

使用给定 BuildInfoFileKey 检索文件版本的辅助方法。

参数
key BuildInfoKey.BuildInfoFileKey:请求的 BuildInfoFileKey

返回
String 映像版本;如果未找到,则为 null

getVersion

public abstract String getVersion (String name)

用于检索具有给定名称的文件版本的辅助方法。

返回
String 映像版本;如果未找到,则为 null

getVersionedFile

public VersionedFile getVersionedFile (BuildInfoKey.BuildInfoFileKey key)

用于检索具有给定 BuildInfoFileKeyVersionedFile 的辅助方法。

参数
key BuildInfoKey.BuildInfoFileKey:请求的 BuildInfoFileKey

返回
VersionedFile 版本化文件;如果未找到,则为 null

getVersionedFile

public VersionedFile getVersionedFile (String name)

用于检索具有给定名称的 VersionedFile 的辅助方法。

返回
VersionedFile 版本化文件;如果未找到,则为 null

getVersionedFileKeys

public  getVersionedFileKeys ()

返回可通过 getFile(BuildInfoFileKey) 查询 VersionedFile 的一组键。

返回

getVersionedFiles

public  getVersionedFiles (BuildInfoKey.BuildInfoFileKey key)

用于检索与给定 BuildInfoFileKey 关联的 VersionedFile 列表的辅助方法。该键是否允许存储列表。

参数
key BuildInfoKey.BuildInfoFileKey:请求的 BuildInfoFileKey

返回
版本化文件;如果未找到,则为 null

removeBuildAttribute

public void removeBuildAttribute (String attributeName)

从跟踪中移除给定的 attributeName。

参数
attributeName String:要停止跟踪的属性

setBuildBranch

public abstract void setBuildBranch (String branch)

设置 build 分支

参数
branch String:分支名称

setBuildFlavor

public abstract void setBuildFlavor (String buildFlavor)

设置 build 变种。

setBuildId

public abstract void setBuildId (String buildId)

设置被测 build 的唯一标识符。不得为 null。

参数
buildId String

setDeviceSerial

public abstract void setDeviceSerial (String serial)

设置与此 build 关联的 ITestDevice 序列号。

参数
serial String:执行此 build 时所用的 ITestDevice 的序列号。

setFile

public abstract void setFile (String name, 
                File file, 
                String version)

在此 build 信息中存储具有给定名称的文件。

参数
name String:文件的唯一名称

file File:本地 ERROR(/File)

version String:文件版本

setFile

public void setFile (BuildInfoKey.BuildInfoFileKey key, 
                File file, 
                String version)

存储在此 build 信息中指定了 BuildInfoFileKey 的文件。

参数
key BuildInfoKey.BuildInfoFileKey:文件的唯一名称,基于 BuildInfoFileKey

file File:本地 ERROR(/File)

version String:文件版本

setProperties

public abstract void setProperties (BuildInfoProperties... properties)

IBuildInfo 实例设置 BuildInfoProperties。替换任意值 和之前设置的现有属性

参数
properties BuildInfoProperties:要添加的属性的列表。

setTestTag

public abstract void setTestTag (String testTag)

为要运行的测试设置唯一名称。

参数
testTag String

阶段远程文件

public File stageRemoteFile (String fileName, 
                File workingDir)

在 build 信息的根目录中暂存一个属于远程文件的文件。

TODO(b/138416078):当测试需要模块时,请移除此接口及其调用方 可以正确构建输出到测试模块目录本身。

参数
fileName String:远程文件中要位于的文件的名称。

workingDir File:用于暂存文件的目录的 ERROR(/File) 对象。

返回
File 在本地工作目录中暂存的文件的 ERROR(/File) 对象。

ToProto

public BuildInformation.BuildInfo toProto ()

将 BuildInfo 实例序列化为 protobuf。

返回
BuildInformation.BuildInfo