GTestBase
public
abstract
class
GTestBase
extends Object
implements
IAbiReceiver,
IConfigurationReceiver,
IRemoteTest,
IRuntimeHintProvider,
IShardableTest,
ITestCollector,
ITestFilterReceiver
java.lang.Object | |
↳ | com.android.tradefed.testtype.GTestBase |
gTest 的基类
摘要
字段 | |
---|---|
protected
static
final
String |
FILTER_EXTENSION
|
protected
static
final
String |
GTEST_FLAG_FILE
|
protected
static
final
String |
GTEST_FLAG_FILTER
|
protected
static
final
String |
GTEST_FLAG_LIST_TESTS
|
protected
static
final
String |
GTEST_FLAG_PRINT_TIME
|
protected
static
final
String |
GTEST_FLAG_RUN_DISABLED_TESTS
|
protected
static
final
String |
GTEST_XML_OUTPUT
|
公共构造函数 | |
---|---|
GTestBase()
|
公共方法 | |
---|---|
void
|
addAllExcludeFilters(
添加要排除的过滤器的 |
void
|
addAllIncludeFilters(
添加要包含的测试的过滤条件的 |
void
|
addExcludeFilter(String filter)
添加了用于过滤要排除的测试的过滤条件。 |
void
|
addIncludeFilter(String filter)
添加要包含的测试的过滤条件。 |
String
|
cleanFilter(String filter)
|
void
|
clearExcludeFilters()
删除当前跟踪的所有排除过滤器。 |
void
|
clearIncludeFilters()
删除当前跟踪的所有包含过滤条件。 |
IAbi
|
getAbi()
|
|
getAfterTestCmd()
获取要在 GTest 之后运行的 shell 命令。 |
|
getBeforeTestCmd()
获取要在 GTest 之前运行的 shell 命令。 |
|
getExcludeFilters()
返回排除过滤条件的当前 |
|
getFileExclusionFilterRegex()
获取正则表达式,以排除某些文件的执行。 |
|
getGTestFlags()
获取要传递给原生测试的 shell 命令的附加标志值。 |
|
getIncludeFilters()
返回包含过滤条件的当前 |
long
|
getMaxTestTimeMs()
获取 gtest 的运行时长上限。 |
String
|
getModuleName()
运行 Android 原生测试模块。 |
boolean
|
getRunDisabledTests()
获取 GTest 是否应运行已停用的测试。 |
long
|
getRuntimeHint()
返回测试的预期运行时(以毫秒为单位)。 |
int
|
getShardCount()
返回当前的分片数量。 |
int
|
getShardIndex()
获取此测试的分片索引。 |
String
|
getTestFilterKey()
获取测试过滤条件键。 |
String
|
getTestModule()
获取模块名称。 |
boolean
|
isCollectTestsOnly()
获取是否仅调用测试二进制文件来收集适用测试用例的列表。 |
boolean
|
isEnableXmlOutput()
获取是否使用 gtest xml 输出测试结果。 |
boolean
|
isSharded()
获取 isSharded 标志。 |
void
|
notifyTestExecution(boolean incompleteTestFound,
通知父级测试执行情况,以便为重试尝试正确处理包含/排除过滤条件。 |
void
|
setAbi(IAbi abi)
|
void
|
setCollectTestsOnly(boolean shouldCollectTest)
启用或停用测试收集模式 |
void
|
setConfiguration(IConfiguration configuration)
注入正在使用的 |
void
|
setModuleName(String moduleName)
设置要运行的 Android 原生测试模块。 |
void
|
setShardCount(int shardCount)
设置此测试的分片数量。 |
void
|
setShardIndex(int shardIndex)
设置此测试的分片索引。 |
|
split(int shardCountHint)
|
受保护的方法 | |
---|---|
String
|
createFlagFile(String filter)
创建一个文件,其中包含将通过 --gtest_flagfile 使用的过滤条件,以避免参数大小存在任何操作系统限制。 |
void
|
erasePrependedFileName(
|
String
|
getAllGTestFlags(String path)
用于获取要传递给 adb shell 命令的所有 GTest 标志的辅助程序。 |
IConfiguration
|
getConfiguration()
返回测试配置。 |
String
|
getExceptionMessage(Exception e)
尽最大努力针对指定 |
String
|
getGTestCmdLine(String fullPath, String flags)
用于构建要运行的 gtest 命令的辅助方法。 |
String
|
getGTestCmdLineWrapper(String fullPath, String flags)
允许派生类在某些其他工具(chroot、strace、gdb 等)下封装 gtest 命令的帮助程序。 |
String
|
getGTestFilters(String path)
用于获取要运行的测试的 g-test 过滤条件的帮助程序。 |
ITestInvocationListener
|
getGTestListener(ITestInvocationListener... listeners)
返回提供额外调试信息的 GTestListener,例如,如果 mDisabledDuplicateCheck 为 false,则检测并报告重复的测试。 |
abstract
String
|
loadFilter(String path)
定义 get 过滤器方法。 |
void
|
setRunDisabled(boolean runDisabled)
设置 GTest 是否应运行已停用的测试。 |
字段
FILTER_EXTENSION
protected static final String FILTER_EXTENSION
GTEST_FLAG_FILE
protected static final String GTEST_FLAG_FILE
GTEST_FLAG_FILTER
protected static final String GTEST_FLAG_FILTER
GTEST_FLAG_LIST_TESTS
protected static final String GTEST_FLAG_LIST_TESTS
GTEST_FLAG_PRINT_TIME
protected static final String GTEST_FLAG_PRINT_TIME
GTEST_FLAG_RUN_DISABLED_TESTS
protected static final String GTEST_FLAG_RUN_DISABLED_TESTS
GTEST_XML_OUTPUT
protected static final String GTEST_XML_OUTPUT
公共构造函数
GTestBase
public GTestBase ()
公共方法
addAllIncludeFilters
public void addAllIncludeFilters (filters)
添加了要包含的测试的过滤条件的 ERROR(/Set)
。
参数 | |
---|---|
filters |
|
addExcludeFilter
public void addExcludeFilter (String filter)
添加了用于过滤要排除的测试的过滤条件。
参数 | |
---|---|
filter |
String |
addIncludeFilter
public void addIncludeFilter (String filter)
添加了用于过滤要包含的测试的过滤条件。
参数 | |
---|---|
filter |
String |
cleanFilter
public String cleanFilter (String filter)
参数 | |
---|---|
filter |
String |
返回 | |
---|---|
String |
clearExcludeFilters
public void clearExcludeFilters ()
删除目前跟踪的所有排除过滤条件。
clearIncludeFilters
public void clearIncludeFilters ()
删除当前跟踪的所有包含过滤条件。
getAfterTestCmd
publicgetAfterTestCmd ()
获取要在 GTest 之后运行的 shell 命令。
返回 | |
---|---|
|
getBeforeTestCmd
publicgetBeforeTestCmd ()
获取要在 GTest 之前运行的 shell 命令。
返回 | |
---|---|
|
getFileExclusionFilterRegex
publicgetFileExclusionFilterRegex ()
获取正则表达式,以排除特定文件,使其不执行。
返回 | |
---|---|
|
getGTestFlags
publicgetGTestFlags ()
获取要传递给原生测试的 shell 命令的其他标志值。
返回 | |
---|---|
|
getMaxTestTimeMs
public long getMaxTestTimeMs ()
获取 gtest 的运行时长上限。
返回 | |
---|---|
long |
getModuleName
public String getModuleName ()
运行 Android 原生测试模块。
返回 | |
---|---|
String |
要运行的原生测试模块的名称,如果未设置,则返回 null |
getRunDisabledTests
public boolean getRunDisabledTests ()
获取 GTest 是否应运行已停用的测试。
返回 | |
---|---|
boolean |
如果应运行已停用的测试,则为 true;否则为 false |
getRuntimeHint
public long getRuntimeHint ()
返回测试的预期运行时(以毫秒为单位)。 该时间用于对分片执行进行负载均衡
返回 | |
---|---|
long |
getShardCount
public int getShardCount ()
返回当前的分片数量。
返回 | |
---|---|
int |
getShardIndex
public int getShardIndex ()
获取此测试的分片编号。
返回 | |
---|---|
int |
getTestFilterKey
public String getTestFilterKey ()
获取测试过滤条件键。
返回 | |
---|---|
String |
getTestModule
public String getTestModule ()
获取模块名称。
返回 | |
---|---|
String |
isCollectTestsOnly
public boolean isCollectTestsOnly ()
获取是否仅调用测试二进制文件来收集适用测试用例的列表。
返回 | |
---|---|
boolean |
isEnableXmlOutput
public boolean isEnableXmlOutput ()
获取是否使用 gtest xml 输出测试结果。
返回 | |
---|---|
boolean |
isSharded
public boolean isSharded ()
获取 isSharded 标志。
返回 | |
---|---|
boolean |
通知测试执行
public void notifyTestExecution (boolean incompleteTestFound,failedTests)
通知父级测试执行情况,以便为重试尝试正确处理包含/排除过滤条件。
参数 | |
---|---|
incompleteTestFound |
boolean |
failedTests |
|
setCollectTestsOnly
public void setCollectTestsOnly (boolean shouldCollectTest)
启用或停用测试集合模式
setConfiguration
public void setConfiguration (IConfiguration configuration)
注入正在使用的 IConfiguration
。
参数 | |
---|---|
configuration |
IConfiguration |
setModuleName
public void setModuleName (String moduleName)
设置要运行的 Android 原生测试模块。
参数 | |
---|---|
moduleName |
String :要运行的原生测试模块的名称 |
setShardCount
public void setShardCount (int shardCount)
设置此测试的分片数量。
参数 | |
---|---|
shardCount |
int |
setShardIndex
public void setShardIndex (int shardIndex)
设置此测试的分片编号。
参数 | |
---|---|
shardIndex |
int |
分割
publicsplit (int shardCountHint)
split()
的替代版本,还提供尝试运行的分片数量。这对于有时无法任意做出决定的一些测试运行程序非常有用。
参数 | |
---|---|
shardCountHint |
int :尝试的分片数。 |
返回 | |
---|---|
|
要单独执行的一组子测试,如果测试目前不可分片,则为 null |
受保护的方法
createFlagFile
protected String createFlagFile (String filter)
创建一个文件,其中包含将通过 --gtest_flagfile 使用的过滤器,以避免参数大小受到任何操作系统限制。
参数 | |
---|---|
filter |
String :过滤条件字符串 |
返回 | |
---|---|
String |
包含过滤器的文件的路径。 |
抛出 | |
---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
erasePrependedFileName
protected void erasePrependedFileName (filters, String filename)
参数 | |
---|---|
filters |
|
filename |
String |
getAllGTestFlags
protected String getAllGTestFlags (String path)
用于获取要传递给 adb shell 命令的所有 GTest 标志的辅助程序。
参数 | |
---|---|
path |
String :设备上二进制文件的完整路径。 |
返回 | |
---|---|
String |
应传递给 GTest 的所有 GTest 标志的 String |
抛出 | |
---|---|
DeviceNotAvailableException |
getConfiguration
protected IConfiguration getConfiguration ()
返回测试配置。
返回 | |
---|---|
IConfiguration |
IConfiguration |
getExceptionMessage
protected String getExceptionMessage (Exception e)
尽最大努力为给定的 Exception
检索有意义的简短描述性消息
参数 | |
---|---|
e |
Exception :Exception |
返回 | |
---|---|
String |
一条简短的消息 |
getGTestCmdLine
protected String getGTestCmdLine (String fullPath, String flags)
用于构建要运行的 gtest 命令的辅助方法。
参数 | |
---|---|
fullPath |
String :设备上 gtest 二进制文件的绝对文件系统路径 |
flags |
String :gtest 执行标志 |
返回 | |
---|---|
String |
要针对 gtest 运行的 shell 命令行 |
getGTestCmdLineWrapper
protected String getGTestCmdLineWrapper (String fullPath, String flags)
该辅助程序允许派生类在某些其他工具(chroot、strace、gdb 等)下封装 gtest 命令。
参数 | |
---|---|
fullPath |
String |
flags |
String |
返回 | |
---|---|
String |
getGTestFilters
protected String getGTestFilters (String path)
帮助使测试运行的 g-test 过滤器。
请注意,过滤器仅按函数名称进行过滤(例如 Google Test“Test”);系统会考虑所有 Google Test“Test Case”。
参数 | |
---|---|
path |
String :设备上二进制文件的完整路径。 |
返回 | |
---|---|
String |
要传递给 g-test 的完整过滤器标志,如果未指定任何过滤器,则为空字符串 |
抛出 | |
---|---|
DeviceNotAvailableException |
getGTestListener
protected ITestInvocationListener getGTestListener (ITestInvocationListener... listeners)
返回提供额外调试信息的 GTestListener,例如,如果 mDisabledDuplicateCheck 为 false,则检测并报告重复的测试。否则,返回传入的监听器。
参数 | |
---|---|
listeners |
ITestInvocationListener |
返回 | |
---|---|
ITestInvocationListener |
loadFilter
protected abstract String loadFilter (String path)
定义 get 过滤器方法。
子类必须实现如何获取自己的过滤器。
参数 | |
---|---|
path |
String :过滤器文件的完整路径。 |
返回 | |
---|---|
String |
过滤条件字符串。 |
抛出 | |
---|---|
DeviceNotAvailableException |
setRunDisabled
protected void setRunDisabled (boolean runDisabled)
设置 GTest 是否应运行已停用的测试。
参数 | |
---|---|
runDisabled |
boolean |