RemoteAndroidTestRunner

public class RemoteAndroidTestRunner
extends Object implements IRemoteAndroidTestRunner

java.lang.Object
   ↳ com.android.ddmlib.testrunner.RemoteAndroidTestRunner


远程运行 Android 测试命令并报告结果。

摘要

公共构造函数

RemoteAndroidTestRunner(String packageName, IShellEnabledDevice remoteDevice)

替代构造函数。

RemoteAndroidTestRunner(String packageName, String runnerName, IShellEnabledDevice remoteDevice)

替代构造函数。

RemoteAndroidTestRunner(String packageName, String runnerName, IShellEnabledDevice remoteDevice, RemoteAndroidTestRunner.StatusReporterMode statusReporterMode)

创建远程 Android 测试运行程序。

公共方法

void addBooleanArg(String name, boolean value)

添加一个布尔值实参,以包含在插桩命令中。

void addInstrumentationArg(String name, String value)

添加了要包含在插桩命令中的实参。

void cancel()

请求取消此测试运行。

IInstrumentationResultParser createParser(String runName, listeners)

创建将用于解析插桩输出的 InstrumentationResultParser

String getAmInstrumentCommand()
IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType()

返回 runner 生成的测试覆盖率类型。

String getPackageName()

返回应用软件包名称。

String getRunOptions()

返回 am instrument 命令的选项。

String getRunnerName()

返回 runnerName。

void removeInstrumentationArg(String name)

移除之前添加的实参。

void run(ITestRunListener... listeners)

执行此测试运行。

void run( listeners)

执行此测试运行。

void setAdditionalTestOutputLocation(String additionalTestDataPath)

设置在卸载测试应用之前要复制到主机的其他测试输出的位置。

void setClassName(String className)

设置仅运行此类中的测试。必须在“run”之前调用。

void setClassNames(String[] classNames)

设置仅运行所提供类中的测试。必须在“run”之前调用。

void setCoverage(boolean coverage)

设置相应测试运行的此代码覆盖率模式。

void setCoverageReportLocation(String reportPath)

设置生成的覆盖率报告的位置。

void setDebug(boolean debug)

设置相应测试运行的调试模式。

void setLogOnly(boolean logOnly)

将此测试运行设置为仅记录模式 - 跳过测试执行。

void setMaxTimeToOutputResponse(long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

设置在设备上运行测试的 shell 命令输出之间允许的最大时间。

void setMaxTimeout(long maxTimeout, TimeUnit maxTimeUnits)

设置检测完成所需的最长时间。

void setMaxtimeToOutputResponse(int maxTimeToOutputResponse)
void setMethodName(String className, String testName)

设置仅运行指定的测试方法,必须在“run”之前调用。

void setRunName(String runName)

设置要向 ITestRunListener 报告的自定义运行名称,时间为 run()

如果未指定,将使用软件包名称

void setRunOptions(String options)

为 am instrument 命令设置选项。

void setTestCollection(boolean collect)

将此测试运行设置为测试收集模式。

void setTestPackageName(String packageName)

设置运行指定软件包中的所有测试。必须在“run”之前调用。

void setTestSize(IRemoteAndroidTestRunner.TestSize size)

设置为仅运行指定大小的测试。

受保护的方法

String getArgsCommand()

返回所提供的插桩实参的完整插桩命令行语法。

String getRunnerPath()

返回完整的插桩组件路径。

公共构造函数

RemoteAndroidTestRunner

public RemoteAndroidTestRunner (String packageName, 
                IShellEnabledDevice remoteDevice)

替代构造函数。使用默认的插桩运行程序。

参数
packageName String:包含要运行的测试的 Android 应用软件包

remoteDevice IShellEnabledDevice:要执行测试的 Android 设备

RemoteAndroidTestRunner

public RemoteAndroidTestRunner (String packageName, 
                String runnerName, 
                IShellEnabledDevice remoteDevice)

替代构造函数。使用默认值 statusReporterMode

参数
packageName String:包含要运行的测试的 Android 应用软件包

runnerName String:要执行的插桩测试运行程序。如果为 null,将使用默认的 runner

remoteDevice IShellEnabledDevice:要执行测试的 Android 设备

RemoteAndroidTestRunner

public RemoteAndroidTestRunner (String packageName, 
                String runnerName, 
                IShellEnabledDevice remoteDevice, 
                RemoteAndroidTestRunner.StatusReporterMode statusReporterMode)

创建远程 Android 测试运行程序。

参数
packageName String:包含要运行的测试的 Android 应用软件包

runnerName String:要执行的插桩测试运行程序。如果为 null,将使用默认的 runner

remoteDevice IShellEnabledDevice:要执行测试的 Android 设备

statusReporterMode RemoteAndroidTestRunner.StatusReporterMode:用于检测命令的状态报告器模式

公共方法

addBooleanArg

public void addBooleanArg (String name, 
                boolean value)

添加一个布尔值实参,以包含在插桩命令中。

参数
name String:插桩软件包实参的名称

value boolean:实参的值

addInstrumentationArg

public void addInstrumentationArg (String name, 
                String value)

添加了要包含在插桩命令中的实参。

必须在“run”之前调用。如果已提供具有指定名称的实参,则其值将被覆盖。

参数
name String:插桩软件包实参的名称

value String:实参的值

取消

public void cancel ()

请求取消此测试运行。

createParser

public IInstrumentationResultParser createParser (String runName, 
                 listeners)

创建将用于解析插桩输出的 InstrumentationResultParser

参数
runName String:要使用的运行的名称。

listeners :用于报告结果的监听器。

返回
IInstrumentationResultParser InstrumentationResultParser 的一个实例。

getAmInstrumentCommand

public String getAmInstrumentCommand ()

返回
String

getCoverageOutputType

public IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()

返回运行程序生成的测试覆盖率的类型。请参阅CoverageOutput

返回
IRemoteAndroidTestRunner.CoverageOutput

getPackageName

public String getPackageName ()

返回应用软件包名称。

返回
String

getRunOptions

public String getRunOptions ()

返回 am instrument 命令的选项。

返回
String

getRunnerName

public String getRunnerName ()

返回 runnerName。

返回
String

removeInstrumentationArg

public void removeInstrumentationArg (String name)

移除之前添加的实参。

参数
name String:要移除的插桩软件包实参的名称

得分

public void run (ITestRunListener... listeners)

执行此测试运行。

适用于 ERROR(/#run(Collection)) 的便捷方法。

参数
listeners ITestRunListener:监听测试结果

抛出
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

得分

public void run ( listeners)

执行此测试运行。

参数
listeners :测试结果的监听器集合

抛出
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

setAdditionalTestOutputLocation

public void setAdditionalTestOutputLocation (String additionalTestDataPath)

设置在卸载测试应用之前要复制到主机的其他测试输出的位置。例如,生成的基准比较报告。

参数
additionalTestDataPath String

setClassName

public void setClassName (String className)

设置为仅运行此类中的测试。必须在“run”之前调用。

参数
className String:完全限定的类名称(例如 x.y.z)

setClassNames

public void setClassNames (String[] classNames)

设置仅运行所提供类中的测试。必须在“run”之前调用。

如果提供多个类,则需要支持多个类实参语法的 InstrumentationTestRunner。

参数
classNames String:完全限定类名(例如 x.y.z)的数组

setCoverage

public void setCoverage (boolean coverage)

设置相应测试运行的此代码覆盖率模式。

参数
coverage boolean

setCoverageReportLocation

public void setCoverageReportLocation (String reportPath)

设置生成的覆盖率报告的位置。

参数
reportPath String

setDebug

public void setDebug (boolean debug)

设置相应测试运行的调试模式。如果为 true,Android 测试运行程序将等待调试程序连接,然后再继续执行测试。

参数
debug boolean

setLogOnly

public void setLogOnly (boolean logOnly)

将此测试运行设置为仅记录模式 - 跳过测试执行。

参数
logOnly boolean

setMaxTimeToOutputResponse

public void setMaxTimeToOutputResponse (long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

设置在设备上运行测试的 shell 命令输出之间允许的最大时间。

这样,您就可以设置超时时间,以防测试卡住而永远无法完成。这与连接的正常超时不同。

默认情况下,不会指定超时时间。

参数
maxTimeToOutputResponse long:允许命令在最长多长时间内不输出任何响应。值为 0 表示该方法将无限期等待(直到 receiver 取消执行)命令输出,并且永远不会抛出异常。

maxTimeUnits TimeUnit:非零 maxTimeToOutputResponsemaxTimeout 值的单位。

setMaxTimeout

public void setMaxTimeout (long maxTimeout, 
                TimeUnit maxTimeUnits)

设置检测完成所需的最长时间。

这样,您就可以设置超时时间,以防测试卡住而永远无法完成。这与连接的正常超时不同。

默认情况下,不会指定超时时间。

参数
maxTimeout long:允许命令在最长多长时间内不输出任何响应。值为 0 表示该方法将无限期等待(直到 receiver 取消执行)命令输出,并且永远不会抛出异常。

maxTimeUnits TimeUnit:非零 maxTimeToOutputResponsemaxTimeout 值的单位。

setMaxtimeToOutputResponse

public void setMaxtimeToOutputResponse (int maxTimeToOutputResponse)

参数
maxTimeToOutputResponse int

setMethodName

public void setMethodName (String className, 
                String testName)

设置仅运行指定的测试方法,必须在“run”之前调用。

参数
className String:完全限定的类名称(例如 x.y.z)

testName String:方法名称

setRunName

public void setRunName (String runName)

设置要向 ITestRunListener 报告的自定义运行名称,时间为 run()

如果未指定,将使用软件包名称

setRunOptions

public void setRunOptions (String options)

为 am instrument 命令设置选项。如需查看完整的选项列表,请参阅 com/android/commands/am/Am.java。

参数
options String

setTestCollection

public void setTestCollection (boolean collect)

将此测试运行设置为测试收集模式。如果为 true,则会跳过测试执行,并设置成功收集测试所需的所有相应 runner 实参。

参数
collect boolean

setTestPackageName

public void setTestPackageName (String packageName)

设置为运行指定软件包中的所有测试,必须在“run”之前调用。

参数
packageName String:完全限定的软件包名称(例如 x.y.z)

setTestSize

public void setTestSize (IRemoteAndroidTestRunner.TestSize size)

设置为仅运行指定大小的测试。必须在“run”之前调用。

参数
size IRemoteAndroidTestRunner.TestSize:要运行的 TestSize

受保护的方法

getArgsCommand

protected String getArgsCommand ()

返回所提供的插桩实参的完整插桩命令行语法。如果未指定任何实参,则返回空字符串。

返回
String

getRunnerPath

protected String getRunnerPath ()

返回完整的插桩组件路径。

返回
String