InstrumentationTestRunner 类

定义

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

[Android.Runtime.Register("android/test/InstrumentationTestRunner", DoNotGenerateAcw=true)]
public class InstrumentationTestRunner : Android.App.Instrumentation
[<Android.Runtime.Register("android/test/InstrumentationTestRunner", DoNotGenerateAcw=true)>]
type InstrumentationTestRunner = class
    inherit Instrumentation
继承
InstrumentationTestRunner
属性

注解

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

<div class=“special reference”><h3>Developer Guides</h3>

有关应用程序测试的详细信息,请阅读 测试 开发人员指南。

</div>

<h3>典型用法</h3><ol><li>Write junit.framework.TestCases,用于针对包中的类执行单元、功能或性能测试。 通常,这些是从:<ul><li><android.test.ActivityInstrumentationTestCase2/li><<android.test.ActivityUnitTestCase>/<><android.test.ApplicationTestCaseandroid.test.AndroidTestCase<><>>li/li/>android.test.InstrumentationTestCase<<>li/android.test.ProviderTestCase<android.test.ServiceTestCase><>><><li/>><<android.test.SingleLaunchActivityTestCaseli/li></ul><li>Set the android:targetPackage attribute &lt;instrumentation&gt; of the element in the test package's manifest. 应将属性值设置为正在测试的目标应用程序的包名称。 <li>使用“adb shell am instrumentation -w”(没有可选参数)运行检测,以运行所有测试(性能测试除外)。 <li>使用“adb shell am instrumentation -w”运行检测,并将参数“-e func true”用于运行所有功能测试。 这些测试派生自 android.test.InstrumentationTestCase. <li>使用“adb shell am instrumentation -w”运行检测,参数“-e unit true”运行所有单元测试。 这些测试 派生自 android.test.InstrumentationTestCase (不是性能测试)。 <li>使用“adb shell am instrumentation -w”运行检测,并将参数“-e 类”设置为运行个人 junit.framework.TestCase。 </ol><p/><b>运行所有测试:</b> adb shell am instrumentation -w com.android.foo/android.test.InstrumentationTestRunner <p/><b>运行所有小型测试:/b> adb shell am instrumentation -w -e size small com.android.foo/android.test.InstrumentationTestRunner <p/><b>运行所有中等测试:<</b> adb shell am instrumentation -w -e size medium com.android.foo/android.test.InstrumentationTestRunner <p/><b>运行所有大型测试:</b> adb shell am instrumentation -w -e size large com.android.foo/android.test.InstrumentationTestRunner <p/><b>Filter test run to tests with given annotation:</b> adb shell am instrumentation -w -e annotation com.android.foo.MyAnnotation com.android.foo/android.test.InstrumentationTestRunner <p/> If used with other options, the resulting test run will contain the union of the two options. 例如,“-e size large -e annotation com.android.foo.MyAnnotation”将仅运行包含 LargeTest “com.android.foo.MyAnnotation”批注的测试。 <p/>b 筛选器测试运行到没有给定批注的测试:</b> adb shell am instrumentation -w -e notAnnotation com.android.foo.MyAnnotation com.android.foo/android.test.InstrumentationTestRunner <p /<>b>运行单个测试箱:</b> adb shell am instrumentation -w -e class com.android.foo.FooTest com.android.foo/android.test.InstrumentationTestRunner <p/b 运行单个测试:</>b>><><adb shell am instrumentation -w -e class com.android.foo.Foo.FooTest#testFoo com.android.foo/android.test.InstrumentationTestRunner <p/><b>Running multiple tests:</b> adb shell am instrumentation -w -e class com.android.foo.Foo.foo.TooTest com.android.foo/android.test.InstrumentationTestRunner <p/b Running all tests in a java package:</b>>><adb shell am instrumentation -w -e package com.android.foo.subpkg com.android.foo/android.test.InstrumentationTestRunner <p/><b>包括性能测试:</b> adb shell am instrumentation -w -e perf true com.android.foo/android.test.InstrumentationTestRunner <p/><b>若要调试测试,请在代码中设置断点并传递:</b> -e debug true <p/><b>若要在“仅日志”模式下运行<>-e log true 此选项将加载并循环访问所有测试类和方法,但会绕过实际的测试执行。 可用于快速获取检测命令要执行的测试的信息。 <p/><b>若要生成 EMMA 代码覆盖率:</b> -e 覆盖率 true 注意:这需要经过检测的 emma 生成。 默认情况下,代码覆盖率结果文件将保存在 /data/<app>/coverage.ec 文件中,除非由 coverageFile 标志重写(如下所示) <p/><b> 若要指定 EMMA 代码覆盖率结果文件路径:</b> -e coverageFile /sdcard/myFile.ec <br/> 以及其他参数。

此成员已弃用。 请改用 AndroidJUnitRunner 。 应使用 Android 测试支持库编写新测试。

适用于 . 的 android.test.InstrumentationTestRunnerJava 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

构造函数

InstrumentationTestRunner()
InstrumentationTestRunner(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

字段

ReportKeyIdentifier

如果包含在发送到 IInstrumentationWatcher 的状态或最终捆绑包中,则此键标识正在写入报告的类。

(继承自 Instrumentation)
ReportKeyNameClass

如果包含在发送到 IInstrumentationWatcher 的状态或最终捆绑包中,则此键标识当前测试类的名称。

ReportKeyNameTest

如果包含在发送到 IInstrumentationWatcher 的状态或最终捆绑包中,则此密钥标识当前测试的名称。

ReportKeyNumCurrent

如果包含在发送到 IInstrumentationWatcher 的状态或最终捆绑包中,则此键标识当前测试的序列号。

ReportKeyNumTotal

如果包含在发送到 IInstrumentationWatcher 的状态或最终捆绑包中,则此密钥标识要运行的测试总数。

ReportKeyStack

如果包含在发送到 IInstrumentationWatcher 的状态捆绑包中,则此密钥标识描述错误或失败的堆栈跟踪。

ReportKeyStreamresult

如果包含在发送到 IInstrumentationWatcher 的状态或最终捆绑包中,则此键标识一个字符串,该字符串只需打印到输出流即可。

(继承自 Instrumentation)
ReportValueId

此值(如果使用键 android.app.Instrumentation#REPORT_KEY_IDENTIFIER存储)将 InstrumentationTestRunner 标识为报表的源。

属性

AllocCounts

返回分配计数中当前结果的捆绑包。

(继承自 Instrumentation)
Arguments

获取传递给此检测的参数。

BinderCounts

返回一个捆绑包,其中包含此过程的各种联编程序计数。

(继承自 Instrumentation)
Class

返回此 Object的运行时类。

(继承自 Object)
ComponentName

返回此检测的完整组件名称。

(继承自 Instrumentation)
Context

返回此检测包的上下文。

(继承自 Instrumentation)
Handle

基础 Android 实例的句柄。

(继承自 Object)
IsProfiling

检查是否已启动此检测,并启用分析。

(继承自 Instrumentation)
JniIdentityHashCode

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
JniPeerMembers

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

Loader

重写此选项以提供对包的类加载程序的访问权限。

PeerReference

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
ProcessName

返回运行此检测的进程的名称。

(继承自 Instrumentation)
TargetContext

返回要检测的目标应用程序的上下文。

(继承自 Instrumentation)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

UiAutomation

UiAutomation获取未设置标志的实例。

(继承自 Instrumentation)

方法

AcquireLooperManager(Looper)

控制在指定的循环器上执行消息,直到 TestLooperManager#release 调用为止。

(继承自 Instrumentation)
AddMonitor(Instrumentation+ActivityMonitor)

添加一个新 ActivityMonitor 项,每当启动活动时都会进行检查。

(继承自 Instrumentation)
AddMonitor(IntentFilter, Instrumentation+ActivityResult, Boolean)

添加一个新 ActivityMonitor 项,每当启动活动时都会进行检查。

(继承自 Instrumentation)
AddMonitor(String, Instrumentation+ActivityResult, Boolean)

添加一个新 ActivityMonitor 项,每当启动活动时都会进行检查。

(继承自 Instrumentation)
AddResults(Bundle)

在检测执行期间报告一些结果。

(继承自 Instrumentation)
CallActivityOnCreate(Activity, Bundle)

执行对活动方法的 Activity#onCreate 调用。

(继承自 Instrumentation)
CallActivityOnCreate(Activity, Bundle, PersistableBundle)

执行对活动方法的 Activity#onCreate 调用。

(继承自 Instrumentation)
CallActivityOnDestroy(Activity) (继承自 Instrumentation)
CallActivityOnNewIntent(Activity, Intent)

执行对活动方法的 Activity#onNewIntent 调用。

(继承自 Instrumentation)
CallActivityOnPause(Activity)

执行对活动方法的 Activity#onPause 调用。

(继承自 Instrumentation)
CallActivityOnPictureInPictureRequested(Activity)

执行对活动方法的 Activity#onPictureInPictureRequested 调用。

(继承自 Instrumentation)
CallActivityOnPostCreate(Activity, Bundle)

执行对活动方法的 Activity#onPostCreate 调用。

(继承自 Instrumentation)
CallActivityOnPostCreate(Activity, Bundle, PersistableBundle)

执行对活动方法的 Activity#onPostCreate 调用。

(继承自 Instrumentation)
CallActivityOnRestart(Activity)

执行对活动方法的 Activity#onRestart 调用。

(继承自 Instrumentation)
CallActivityOnRestoreInstanceState(Activity, Bundle)

执行对活动方法的 Activity#onRestoreInstanceState 调用。

(继承自 Instrumentation)
CallActivityOnRestoreInstanceState(Activity, Bundle, PersistableBundle)

执行对活动方法的 Activity#onRestoreInstanceState 调用。

(继承自 Instrumentation)
CallActivityOnResume(Activity)

执行对活动方法的 Activity#onResume 调用。

(继承自 Instrumentation)
CallActivityOnSaveInstanceState(Activity, Bundle)

执行对活动方法的 Activity#onSaveInstanceState 调用。

(继承自 Instrumentation)
CallActivityOnSaveInstanceState(Activity, Bundle, PersistableBundle)

执行对活动方法的 Activity#onSaveInstanceState 调用。

(继承自 Instrumentation)
CallActivityOnStart(Activity)

执行对活动方法的 Activity#onStart 调用。

(继承自 Instrumentation)
CallActivityOnStop(Activity)

执行对活动方法的 Activity#onStop 调用。

(继承自 Instrumentation)
CallActivityOnUserLeaving(Activity)

执行对活动方法的 Activity#onUserLeaveHint 调用。

(继承自 Instrumentation)
CallApplicationOnCreate(Application)

执行对应用程序方法的 Application#onCreate 调用。

(继承自 Instrumentation)
CheckMonitorHit(Instrumentation+ActivityMonitor, Int32)

测试是否已命中现有项 ActivityMonitor

(继承自 Instrumentation)
Clone()

创建并返回此对象的副本。

(继承自 Object)
Dispose()

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
Dispose(Boolean)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
EndPerformanceSnapshot() (继承自 Instrumentation)
Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
Finish(Result, Bundle)

终止应用程序的检测。

(继承自 Instrumentation)
GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
GetUiAutomation(UiAutomationFlags)

UiAutomation获取设置了标志的实例。

(继承自 Instrumentation)
InvokeContextMenuAction(Activity, Int32, MenuPerformFlags)

显示当前聚焦视图的上下文菜单,并执行特定的上下文菜单项。

(继承自 Instrumentation)
InvokeMenuActionSync(Activity, Int32, MenuPerformFlags)

执行特定菜单项。

(继承自 Instrumentation)
JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
NewActivity(Class, Context, IBinder, Application, Intent, ActivityInfo, ICharSequence, Activity, String, Object)

执行对象的实例化 Activity

(继承自 Instrumentation)
NewActivity(Class, Context, IBinder, Application, Intent, ActivityInfo, String, Activity, String, Object)

执行对象的实例化 Activity

(继承自 Instrumentation)
NewActivity(ClassLoader, String, Intent)

执行进程的 Activity 对象的实例化。

(继承自 Instrumentation)
NewApplication(ClassLoader, String, Context)

执行进程的 Application 对象的实例化。

(继承自 Instrumentation)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
OnCreate(Bundle)

在启动检测时调用,然后加载任何应用程序代码。

(继承自 Instrumentation)
OnDestroy()

在检测到的应用程序停止时调用,在发生所有正常的应用程序清理后。

(继承自 Instrumentation)
OnException(Object, Throwable)

每当系统捕获应用程序引发的未经处理的异常时,都会调用此异常。

(继承自 Instrumentation)
OnStart()

检测线程进入执行的方法。

(继承自 Instrumentation)
RemoveMonitor(Instrumentation+ActivityMonitor)

删除之前添加的#addMonitor一个 ActivityMonitor

(继承自 Instrumentation)
ResetInTouchMode()

#setInTouchMode touch mode将重置为设备默认值。

(继承自 Instrumentation)
RunOnMainSync(Action)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Instrumentation)
RunOnMainSync(IRunnable)

对应用程序的主线程执行调用,直到它完成为止。

(继承自 Instrumentation)
SendCharacterSync(Keycode)

将具有给定键代码的向上和向下键事件发送到当前焦点窗口,并等待处理它。

(继承自 Instrumentation)
SendKeyDownUpSync(Keycode)

将具有给定键代码的向上和向下键事件发送到当前焦点窗口,并等待处理它。

(继承自 Instrumentation)
SendKeySync(KeyEvent)

将键事件发送到当前聚焦的窗口,并等待处理它。

(继承自 Instrumentation)
SendPointerSync(MotionEvent)

将指针事件调度到受检测应用程序拥有的窗口中,并等待处理该事件。

(继承自 Instrumentation)
SendStatus(Result, Bundle)

提供有关应用程序的状态报告。

(继承自 Instrumentation)
SendStringSync(String)

发送导致给定文本被键入到当前焦点窗口中的关键事件,并等待处理它。

(继承自 Instrumentation)
SendTrackballEventSync(MotionEvent)

将轨迹球事件调度到当前聚焦的窗口中,并等待处理它。

(继承自 Instrumentation)
SetAutomaticPerformanceSnapshots() (继承自 Instrumentation)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
SetInTouchMode(Boolean)

强制全局系统处于或脱离接触模式。

(继承自 Instrumentation)
Start()

创建并启动运行检测的新线程。

(继承自 Instrumentation)
StartActivitySync(Intent)

启动一个新活动,并等待它开始运行,然后再返回。

(继承自 Instrumentation)
StartActivitySync(Intent, Bundle)

启动一个新活动,并等待它开始运行,然后再返回。

(继承自 Instrumentation)
StartAllocCounting() (继承自 Instrumentation)
StartPerformanceSnapshot() (继承自 Instrumentation)
StartProfiling()

如果 isProfiling() 返回 true,此方法将开始分析。

(继承自 Instrumentation)
StopAllocCounting() (继承自 Instrumentation)
StopProfiling()

如果 isProfiling() 返回 true,则停止分析。

(继承自 Instrumentation)
ToArray<T>()

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em> 或 <em>interrupted</em>。<><

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。

(继承自 Object)
WaitForIdle(Action)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Instrumentation)
WaitForIdle(IRunnable)

计划应用程序的主线程空闲时间的回调(没有要处理的事件)。

(继承自 Instrumentation)
WaitForIdleSync()

同步等待应用程序空闲。

(继承自 Instrumentation)
WaitForMonitor(Instrumentation+ActivityMonitor)

等待现有项 ActivityMonitor 命中。

(继承自 Instrumentation)
WaitForMonitorWithTimeout(Instrumentation+ActivityMonitor, Int64)

等待现有项 ActivityMonitor 命中,直到超时过期。

(继承自 Instrumentation)

显式接口实现

IJavaPeerable.Disposed()

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
IJavaPeerable.Finalized()

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

GetJniTypeName(IJavaPeerable)

Instrumentation针对 Android 包(应用程序)运行各种类型的 junit.framework.TestCases。

适用于