InstrumentationTest
public
class
InstrumentationTest
extends Object
implements
IAbiReceiver,
IConfigurationReceiver,
IDeviceTest,
IMetricCollectorReceiver,
IRemoteTest,
ITestCollector
java.lang.Object | |
↳ | com.android.tradefed.testtype.InstrumentationTest |
在给定设备上运行插桩测试软件包的测试。
摘要
字段 | |
---|---|
public
static
final
String |
RUN_TESTS_AS_USER_KEY
|
public
static
final
String |
RUN_TESTS_ON_SDK_SANDBOX
|
protected
boolean |
mDebug
|
protected
boolean |
mInstrumentSdkInSandbox
|
protected
boolean |
mInstrumentSdkSandbox
|
公共构造函数 | |
---|---|
InstrumentationTest()
|
公共方法 | |
---|---|
void
|
addDeviceListeners(
允许向运行程序添加更多自定义监听器 |
void
|
addInstrumentationArg(String key, String value)
添加了在运行插桩测试时提供的参数。 |
IAbi
|
getAbi()
|
IConfiguration
|
getConfiguration()
获取此测试的 |
String
|
getCoverageTarget()
获取之前通过 |
boolean
|
getDebug()
获取插桩调试设置。 |
ITestDevice
|
getDevice()
获取被测设备。 |
String
|
getForceAbi()
|
long
|
getMaxTimeout()
返回为插桩设置的超时上限。 |
String
|
getPackageName()
获取要运行的 Android 清单软件包。 |
String
|
getRunName()
获取将提供给监听器的自定义测试运行名称 |
String
|
getRunnerName()
获取要使用的 Android 插桩测试运行程序。 |
boolean
|
isOrchestrator()
|
void
|
run(TestInformation testInfo, ITestInvocationListener listener)
运行测试并向监听器报告结果。 |
void
|
setAbi(IAbi abi)
|
void
|
setClassName(String testClassName)
(可选)设置要运行的测试类名称。 |
void
|
setCollectTestsOnly(boolean shouldCollectTest)
启用或停用测试集合模式 |
void
|
setCollectsTestsShellTimeout(int timeout)
此方法已废弃。 此方法是无操作 |
void
|
setConfiguration(IConfiguration config)
注入正在使用的 |
void
|
setCoverageTarget(String coverageTarget)
设置此测试的覆盖率目标。 |
void
|
setDebug(boolean debug)
设置插桩调试设置。 |
void
|
setDevice(ITestDevice device)
注入被测设备。 |
void
|
setEnforceFormat(boolean enforce)
如果我们强制执行插桩的 AJUR 输出格式,请将其设置为 True。 |
void
|
setForceAbi(String abi)
设置 force-abi 选项。 |
void
|
setInstallFile(File installFile)
设置要安装的包含测试的可选文件。 |
void
|
setIsolatedStorage(boolean isolatedStorage)
设置是否使用隔离存储空间。 |
void
|
setMethodName(String testMethodName)
(可选)设置要运行的测试方法。 |
void
|
setMetricCollectors(
设置为测试运行定义的 |
void
|
setOrchestrator(boolean useOrchestrator)
设置 --orchestrator 选项 |
void
|
setPackageName(String packageName)
设置要运行的 Android 清单软件包。 |
void
|
setReRunUsingTestFile(boolean reRunUsingTestFile)
设置 --rerun-from-file 选项。 |
void
|
setRerunMode(boolean rerun)
(可选)设置重新运行模式。 |
void
|
setRunName(String runName)
设置将提供给监听器的自定义测试运行名称 |
void
|
setRunnerName(String runnerName)
(可选)设置要使用的 Android 插桩测试运行程序。 |
void
|
setShellTimeout(long timeout)
(可选)设置等待设备输出 shell 命令的最大时间(以毫秒为单位)。 |
void
|
setTestFilePathOnDevice(String testFilePathOnDevice)
(可选)设置指向设备上文件的路径,该文件应包含要运行的以行分隔的测试类和方法(格式:com.foo.Class#method)列表。 |
void
|
setTestPackageName(String testPackageName)
设置测试软件包过滤条件。 |
void
|
setTestSize(String size)
(可选)设置要运行的测试大小。 |
void
|
setTestTimeout(long timeout)
您可以选择为每项单独的测试运行设置最长时间(以毫秒为单位)。 |
void
|
setTestsToRun(
设置此 InstrumentationTest 应执行的测试集合。 |
void
|
setWindowAnimation(boolean windowAnimation)
|
受保护的方法 | |
---|---|
static
|
excludeNonExecuted(TestRunResult results)
过滤掉“NOT_EXECUTED”和“Skipped”,以跟踪需要重新运行的内容。 |
String
|
getClassName()
获取要运行的类名称。 |
ListInstrumentationParser
|
getListInstrumentationParser()
获取用于解析“pm list instrumentation”查询的 |
String
|
getMethodName()
获取要运行的测试方法。 |
String
|
getTestPackageName()
获取要运行的测试 Java 软件包。 |
String
|
queryRunnerName()
查询设备以供测试运行程序使用。 |
void
|
setRunnerArgs(IRemoteAndroidTestRunner runner)
|
字段
RUN_TESTS_AS_USER_KEY
public static final String RUN_TESTS_AS_USER_KEY
RUN_TESTS_ON_SDK_SANDBOX
public static final String RUN_TESTS_ON_SDK_SANDBOX
mDebug
protected boolean mDebug
mInstrumentSdkInSandbox
protected boolean mInstrumentSdkInSandbox
mInstrumentSdkSandbox
protected boolean mInstrumentSdkSandbox
公共构造函数
InstrumentationTest
public InstrumentationTest ()
公共方法
addDeviceListeners
public void addDeviceListeners (extraListeners)
允许向运行程序添加更多自定义监听器
参数 | |
---|---|
extraListeners |
|
addInstrumentationArg
public void addInstrumentationArg (String key, String value)
添加了在运行插桩测试时提供的参数。
参数 | |
---|---|
key |
String :参数名称 |
value |
String :参数值 |
getCoverageTarget
public String getCoverageTarget ()
获取之前通过 setCoverageTarget(String)
设置的 coverageTarget。
返回 | |
---|---|
String |
getDebug
public boolean getDebug ()
获取插桩调试设置。
返回 | |
---|---|
boolean |
布尔值调试设置。 |
getForceAbi
public String getForceAbi ()
返回 | |
---|---|
String |
getMaxTimeout
public long getMaxTimeout ()
返回为插桩设置的超时上限。
返回 | |
---|---|
long |
getPackageName
public String getPackageName ()
获取要运行的 Android 清单软件包。
返回 | |
---|---|
String |
getRunName
public String getRunName ()
获取将提供给监听器的自定义测试运行名称
返回 | |
---|---|
String |
getRunnerName
public String getRunnerName ()
获取要使用的 Android 插桩测试运行程序。
返回 | |
---|---|
String |
isOrchestrator
public boolean isOrchestrator ()
返回 | |
---|---|
boolean |
得分
public void run (TestInformation testInfo, ITestInvocationListener listener)
运行测试并向监听器报告结果。
参数 | |
---|---|
testInfo |
TestInformation :包含运行测试的实用信息的 TestInformation 对象。 |
listener |
ITestInvocationListener :测试结果的 ITestInvocationListener |
抛出 | |
---|---|
DeviceNotAvailableException |
setClassName
public void setClassName (String testClassName)
(可选)设置要运行的测试类名称。
参数 | |
---|---|
testClassName |
String |
setCollectTestsOnly
public void setCollectTestsOnly (boolean shouldCollectTest)
启用或停用测试集合模式
setCollectsTestsShellTimeout
public void setCollectsTestsShellTimeout (int timeout)
此方法已废弃。
此方法是无操作
设置以毫秒为单位的最大时间,以允许在收集测试时“shell 输出响应所需的最大时间”。
参数 | |
---|---|
timeout |
int |
setConfiguration
public void setConfiguration (IConfiguration config)
注入正在使用的 IConfiguration
。
参数 | |
---|---|
config |
IConfiguration |
setCoverageTarget
public void setCoverageTarget (String coverageTarget)
设置此测试的覆盖率目标。
目前未使用。此方法只是为了便于稍后通过 getCoverageTarget()
检索 coverageTarget
参数 | |
---|---|
coverageTarget |
String |
setDebug
public void setDebug (boolean debug)
设置插桩调试设置。
参数 | |
---|---|
debug |
boolean :要将插桩调试设置设为的布尔值。 |
setEnforceFormat
public void setEnforceFormat (boolean enforce)
如果我们强制执行插桩的 AJUR 输出格式,请将其设置为 True。
参数 | |
---|---|
enforce |
boolean |
setForceAbi
public void setForceAbi (String abi)
设置 force-abi 选项。
setInstallFile
public void setInstallFile (File installFile)
设置要安装的包含测试的可选文件。
参数 | |
---|---|
installFile |
File :可安装的 ERROR(/File) |
setIsolatedStorage
public void setIsolatedStorage (boolean isolatedStorage)
设置是否使用隔离存储空间。
参数 | |
---|---|
isolatedStorage |
boolean |
setMethodName
public void setMethodName (String testMethodName)
(可选)设置要运行的测试方法。
参数 | |
---|---|
testMethodName |
String |
setMetricCollectors
public void setMetricCollectors (collectors)
设置为测试运行定义的 IMetricCollector
列表。
参数 | |
---|---|
collectors |
|
setOrchestrator
public void setOrchestrator (boolean useOrchestrator)
设置 --orchestrator 选项
参数 | |
---|---|
useOrchestrator |
boolean |
setPackageName
public void setPackageName (String packageName)
设置要运行的 Android 清单软件包。
参数 | |
---|---|
packageName |
String |
setReRunUsingTestFile
public void setReRunUsingTestFile (boolean reRunUsingTestFile)
设置 --rerun-from-file 选项。
参数 | |
---|---|
reRunUsingTestFile |
boolean |
setRerunMode
public void setRerunMode (boolean rerun)
(可选)设置重新运行模式。
参数 | |
---|---|
rerun |
boolean |
setRunName
public void setRunName (String runName)
设置将提供给监听器的自定义测试运行名称
参数 | |
---|---|
runName |
String |
setRunnerName
public void setRunnerName (String runnerName)
(可选)设置要使用的 Android 插桩测试运行程序。
参数 | |
---|---|
runnerName |
String |
setShellTimeout
public void setShellTimeout (long timeout)
(可选)设置等待设备输出 shell 命令的最大时间(以毫秒为单位)。
参数 | |
---|---|
timeout |
long |
setTestFilePathOnDevice
public void setTestFilePathOnDevice (String testFilePathOnDevice)
(可选)设置指向设备上某个文件的路径,该文件应包含要运行的以行分隔的测试类和方法(格式:com.foo.Class#method)列表。如果设置,系统会自动尝试通过 InstrumentationFileTest 使用此测试文件重新运行测试,而不是通过重新运行为每个剩余测试执行单独的 adb 命令。
参数 | |
---|---|
testFilePathOnDevice |
String |
setTestPackageName
public void setTestPackageName (String testPackageName)
设置测试软件包过滤条件。
如果不为 null,则仅会执行给定 Java 软件包中的测试。
如果已向 setClassName(String)
提供非 null 值,则会被忽略
参数 | |
---|---|
testPackageName |
String |
setTestSize
public void setTestSize (String size)
(可选)设置要运行的测试大小。
参数 | |
---|---|
size |
String |
setTestTimeout
public void setTestTimeout (long timeout)
您可以选择为每次单独的测试运行设置最长时间(以毫秒为单位)。
参数 | |
---|---|
timeout |
long |
setTestsToRun
public void setTestsToRun (tests)
设置此 InstrumentationTest 应执行的测试集合。
参数 | |
---|---|
tests |
:要运行的测试 |
setWindowAnimation
public void setWindowAnimation (boolean windowAnimation)
参数 | |
---|---|
windowAnimation |
boolean |
受保护的方法
excludeNonExecuted
protected staticexcludeNonExecuted (TestRunResult results)
过滤掉“NOT_EXECUTED”和“Skipped”,以便跟踪需要重新运行的内容。
参数 | |
---|---|
results |
TestRunResult |
返回 | |
---|---|
|
getClassName
protected String getClassName ()
获取要运行的类名称。
返回 | |
---|---|
String |
getListInstrumentationParser
protected ListInstrumentationParser getListInstrumentationParser ()
获取用于解析“pm list instrumentation”查询的 ListInstrumentationParser
。
返回 | |
---|---|
ListInstrumentationParser |
getMethodName
protected String getMethodName ()
获取要运行的测试方法。
返回 | |
---|---|
String |
getTestPackageName
protected String getTestPackageName ()
获取要运行的测试 Java 软件包。
返回 | |
---|---|
String |
queryRunnerName
protected String queryRunnerName ()
查询设备以供测试运行程序使用。
返回 | |
---|---|
String |
与软件包匹配的第一个测试运行器名称,如果找不到任何匹配项,则为 null。 |
抛出 | |
---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
setRunnerArgs
protected void setRunnerArgs (IRemoteAndroidTestRunner runner)
参数 | |
---|---|
runner |
IRemoteAndroidTestRunner |