BaseHostJUnit4Test
public
abstract
class
BaseHostJUnit4Test
extends Object
implements
IAbiReceiver,
ITestInformationReceiver
java.lang.Object
|
↳ |
com.android.tradefed.testtype.junit4.BaseHostJUnit4Test
|
用于运行主机 JUnit4 型测试的基准测试类。此类支持从主机端安装、运行和清理插桩测试。此类与多种设备兼容。
应是从宿主端运行插桩测试的单一可信来源,以避免重复的实用程序和基类。
摘要
公共方法 |
final
void
|
autoTearDown()
自动拆解所有已安装的 apk。
|
final
IAbi
|
getAbi()
|
final
IBuildInfo
|
getBuild()
|
final
ITestDevice
|
getDevice()
|
final
IInvocationContext
|
getInvocationContext()
|
final
TestRunResult
|
getLastDeviceRunResults()
返回最近一次运行 runDeviceTests 时生成的 TestRunResult 。
|
final
|
getListDevices()
|
TestInformation
|
getTestInformation()
|
boolean
|
hasDeviceFeature(String feature)
|
final
void
|
installPackage(DeviceTestRunOptions options)
在设备上根据 DeviceTestRunOptions 安装 APK。
|
final
void
|
installPackage(String apkFileName, String... options)
在设备上根据名称安装 APK。
|
final
void
|
installPackage(ITestDevice device, String apkFileName, String... options)
在指定设备上根据名称安装 APK。
|
final
void
|
installPackageAsUser(ITestDevice device, String apkFileName, boolean grantPermission, int userId, String... options)
在给定设备上为特定用户安装指定名称的 apk。
|
final
void
|
installPackageAsUser(String apkFileName, boolean grantPermission, int userId, String... options)
为特定用户安装指定名称的 apk。
|
final
boolean
|
isPackageInstalled(String pkg)
检查设备上是否安装了指定名称的软件包
|
final
boolean
|
isPackageInstalled(ITestDevice device, String pkg)
检查设备上是否安装了指定名称的软件包
|
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, boolean isWindowAnimationDisabled, instrumentationArgs, extraListeners)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName, Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, instrumentationArgs)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(String pkgName, String testClassName, String testMethodName)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(DeviceTestRunOptions options)
根据 DeviceTestRunOptions 中的信息运行插桩。
|
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, boolean isWindowAnimationDisabled, boolean isRestartDisabled, instrumentationArgs, extraListeners)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(ITestDevice device, String pkgName, String testClassName, String testMethodName)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(String pkgName, String testClassName, Integer userId, Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(String pkgName, String testClassName)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(ITestDevice device, String runner, String pkgName, String testClassName, String testMethodName, Integer userId, Long testTimeoutMs, Long maxTimeToOutputMs, Long maxInstrumentationTimeoutMs, boolean checkResults, boolean isHiddenApiCheckDisabled, boolean isTestApiCheckDisabled, boolean isIsolatedStorageDisabled, instrumentationArgs, extraListeners)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(String pkgName, String testClassName, Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。
|
final
boolean
|
runDeviceTests(String runner, String pkgName, String testClassName, String testMethodName)
用于运行已安装的插桩软件包的方法。
|
final
void
|
setAbi(IAbi abi)
|
final
void
|
setTestInformation(TestInformation testInformation)
|
final
String
|
uninstallPackage(String pkgName)
在设备上卸载软件包。
|
final
String
|
uninstallPackage(ITestDevice device, String pkgName)
在设备上卸载软件包
|
公共构造函数
BaseHostJUnit4Test
public BaseHostJUnit4Test ()
公共方法
autoTearDown
public final void autoTearDown ()
自动拆解所有已安装的 apk。这会从安装了这些 apk 的设备上卸载所有 apk。
getAbi
public final IAbi getAbi ()
getLastDeviceRunResults
public final TestRunResult getLastDeviceRunResults ()
返回最近一次运行 runDeviceTests 时生成的 TestRunResult
。或者,如果没有可用结果,则为 null。
getListDevices
public final getListDevices ()
hasDeviceFeature
public boolean hasDeviceFeature (String feature)
installPackage
public final void installPackage (String apkFileName,
String... options)
在设备上根据名称安装 APK。系统会自动清理 APK。
参数 |
apkFileName |
String :APK 文件的名称。 |
options |
String :为安装命令提供的额外选项 |
installPackage
public final void installPackage (ITestDevice device,
String apkFileName,
String... options)
在指定设备上根据名称安装 APK。系统会自动清理 APK。
参数 |
device |
ITestDevice :用于安装 apk 的 ITestDevice 。 |
apkFileName |
String :APK 文件的名称。 |
options |
String :为安装命令提供的额外选项 |
installPackageAsUser
public final void installPackageAsUser (ITestDevice device,
String apkFileName,
boolean grantPermission,
int userId,
String... options)
在给定设备上为特定用户安装指定名称的 apk。
参数 |
device |
ITestDevice :用于安装 apk 的 ITestDevice 。 |
apkFileName |
String :APK 文件的名称。 |
grantPermission |
boolean :在安装 apk 时是否传递授予权限标志。 |
userId |
int :要安装 APK 的用户的用户 ID。 |
options |
String :向安装命令提供的额外选项 |
installPackageAsUser
public final void installPackageAsUser (String apkFileName,
boolean grantPermission,
int userId,
String... options)
为特定用户安装指定名称的 apk。
参数 |
apkFileName |
String :APK 文件的名称。 |
grantPermission |
boolean :在安装 apk 时是否传递授予权限标志。 |
userId |
int :要安装 APK 的用户的用户 ID。 |
options |
String :向安装命令提供的额外选项 |
isPackageInstalled
public final boolean isPackageInstalled (String pkg)
检查设备上是否安装了指定名称的软件包
返回 |
boolean |
如果在设备上找到该软件包,则为 true |
isPackageInstalled
public final boolean isPackageInstalled (ITestDevice device,
String pkg)
检查设备上是否安装了指定名称的软件包
参数 |
device |
ITestDevice :应卸载软件包的设备。 |
pkg |
String :软件包的名称 |
返回 |
boolean |
如果在设备上找到该软件包,则为 true |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String pkgName,
String testClassName,
String testMethodName,
Integer userId,
Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
userId |
Integer :要针对其运行测试的用户的 ID。可以为 null。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String pkgName,
String testClassName,
String testMethodName,
Long testTimeoutMs,
Long maxTimeToOutputMs,
Long maxInstrumentationTimeoutMs)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
maxTimeToOutputMs |
Long :测试开始输出内容的超时上限。 |
maxInstrumentationTimeoutMs |
Long :完整插桩完成所需的超时上限。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String runner,
String pkgName,
String testClassName,
String testMethodName,
Integer userId,
Long testTimeoutMs,
Long maxTimeToOutputMs,
Long maxInstrumentationTimeoutMs,
boolean checkResults,
boolean isHiddenApiCheckDisabled,
boolean isTestApiCheckDisabled,
boolean isIsolatedStorageDisabled,
boolean isWindowAnimationDisabled,
instrumentationArgs,
extraListeners)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
runner |
String |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
userId |
Integer :要针对其运行测试的用户的 ID。可以为 null。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
maxTimeToOutputMs |
Long :测试开始输出内容的超时上限。 |
maxInstrumentationTimeoutMs |
Long :完整插桩完成所需的超时上限。 |
checkResults |
boolean :是否检查结果是否发生崩溃。 |
isHiddenApiCheckDisabled |
boolean :我们是否应停用隐藏 API 检查。 |
isTestApiCheckDisabled |
boolean :是否应停用测试 API 检查。 |
isIsolatedStorageDisabled |
boolean :我们是否应停用独立存储空间。 |
isWindowAnimationDisabled |
boolean :是否应停用窗口动画。 |
instrumentationArgs |
:要传递给插桩的参数。 |
extraListeners |
|
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String pkgName,
String testClassName,
String testMethodName,
Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String runner,
String pkgName,
String testClassName,
String testMethodName,
Integer userId,
Long testTimeoutMs,
Long maxTimeToOutputMs,
Long maxInstrumentationTimeoutMs,
boolean checkResults,
boolean isHiddenApiCheckDisabled,
instrumentationArgs)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
runner |
String |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
userId |
Integer :要针对其运行测试的用户的 ID。可以为 null。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
maxTimeToOutputMs |
Long :测试开始输出内容的超时上限。 |
maxInstrumentationTimeoutMs |
Long :完整插桩完成所需的超时上限。 |
checkResults |
boolean :是否检查结果是否发生崩溃。 |
isHiddenApiCheckDisabled |
boolean :我们是否应停用隐藏的 API 检查。 |
instrumentationArgs |
:要传递给插桩的参数。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (String pkgName,
String testClassName,
String testMethodName)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String runner,
String pkgName,
String testClassName,
String testMethodName,
Integer userId,
Long testTimeoutMs,
Long maxTimeToOutputMs,
Long maxInstrumentationTimeoutMs,
boolean checkResults,
boolean isHiddenApiCheckDisabled,
boolean isTestApiCheckDisabled,
boolean isIsolatedStorageDisabled,
boolean isWindowAnimationDisabled,
boolean isRestartDisabled,
instrumentationArgs,
extraListeners)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
runner |
String |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
userId |
Integer :要针对其运行测试的用户的 ID。可以为 null。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
maxTimeToOutputMs |
Long :测试开始输出内容的超时上限。 |
maxInstrumentationTimeoutMs |
Long :完整插桩完成所需的超时上限。 |
checkResults |
boolean :是否检查结果是否发生崩溃。 |
isHiddenApiCheckDisabled |
boolean :我们是否应停用隐藏 API 检查。 |
isTestApiCheckDisabled |
boolean :是否应停用测试 API 检查。 |
isIsolatedStorageDisabled |
boolean :我们是否应停用独立存储空间。 |
isWindowAnimationDisabled |
boolean :是否应停用窗口动画。 |
isRestartDisabled |
boolean |
instrumentationArgs |
:要传递给插桩的参数。 |
extraListeners |
|
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String pkgName,
String testClassName,
String testMethodName)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (String pkgName,
String testClassName,
Integer userId,
Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
userId |
Integer :要针对其运行测试的用户的 ID。可以为 null。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (String pkgName,
String testClassName)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (ITestDevice device,
String runner,
String pkgName,
String testClassName,
String testMethodName,
Integer userId,
Long testTimeoutMs,
Long maxTimeToOutputMs,
Long maxInstrumentationTimeoutMs,
boolean checkResults,
boolean isHiddenApiCheckDisabled,
boolean isTestApiCheckDisabled,
boolean isIsolatedStorageDisabled,
instrumentationArgs,
extraListeners)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
device |
ITestDevice :要针对哪个设备运行插桩。 |
runner |
String |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
userId |
Integer :要针对其运行测试的用户的 ID。可以为 null。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
maxTimeToOutputMs |
Long :测试开始输出内容的超时上限。 |
maxInstrumentationTimeoutMs |
Long :完整插桩完成所需的超时上限。 |
checkResults |
boolean :是否检查结果是否发生崩溃。 |
isHiddenApiCheckDisabled |
boolean :我们是否应停用隐藏 API 检查。 |
isTestApiCheckDisabled |
boolean :是否应停用测试 API 检查。 |
isIsolatedStorageDisabled |
boolean :我们是否应停用独立存储空间。 |
instrumentationArgs |
:要传递给插桩的参数。 |
extraListeners |
|
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (String pkgName,
String testClassName,
Long testTimeoutMs)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testTimeoutMs |
Long :要应用于每个测试用例的超时(以毫秒为单位)。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
runDeviceTests
public final boolean runDeviceTests (String runner,
String pkgName,
String testClassName,
String testMethodName)
用于运行已安装的插桩软件包的方法。紧接着使用 getLastDeviceRunResults()
获取结果的详细信息。
参数 |
runner |
String :要使用的插桩运行程序。 |
pkgName |
String :要运行的软件包的名称。 |
testClassName |
String :要运行的测试类的名称。 |
testMethodName |
String :要运行的类中的测试方法的名称。 |
返回 |
boolean |
如果成功且未失败,则为 true。否则为 false。 |
setAbi
public final void setAbi (IAbi abi)
public final void setTestInformation (TestInformation testInformation)
参数 |
testInformation |
TestInformation |
uninstallPackage
public final String uninstallPackage (String pkgName)
在设备上卸载软件包。
参数 |
pkgName |
String :要卸载的 Android 软件包 |
返回 |
String |
包含错误代码的 String ,如果成功则为 null |
uninstallPackage
public final String uninstallPackage (ITestDevice device,
String pkgName)
在设备上卸载软件包
参数 |
device |
ITestDevice :应卸载软件包的设备。 |
pkgName |
String :要卸载的 Android 软件包 |
返回 |
String |
包含错误代码的 String ,如果成功则为 null |