Added in API level 1
Deprecated in API level 24

InstrumentationTestCase

open class InstrumentationTestCase : TestCase
kotlin.Any
   ↳ junit.framework.Assert
   ↳ junit.framework.TestCase
   ↳ android.test.InstrumentationTestCase

A test case that has access to Instrumentation.

Summary

Public constructors

Public methods
open Instrumentation!

Inheritors can access the instrumentation using this.

open Unit

Injects instrumentation into this test case.

open Unit

Injects instrumentation into this test case.

T
launchActivity(pkg: String!, activityCls: Class<T>!, extras: Bundle!)

Utility method for launching an activity.

T
launchActivityWithIntent(pkg: String!, activityCls: Class<T>!, intent: Intent!)

Utility method for launching an activity with a specific Intent.

open Unit

Helper for running portions of a test on the UI thread.

open Unit
sendKeys(keysSequence: String!)

Sends a series of key events through instrumentation and waits for idle.

open Unit
sendKeys(vararg keys: Int)

Sends a series of key events through instrumentation and waits for idle.

open Unit
sendRepeatedKeys(vararg keys: Int)

Sends a series of key events through instrumentation and waits for idle.

Protected methods
open Unit

Runs the current unit test.

open Unit

Make sure all resources are cleaned up and garbage collected before moving on to the next test.

Inherited functions

Public constructors

InstrumentationTestCase

InstrumentationTestCase()

Public methods

getInstrumentation

Added in API level 1
open fun getInstrumentation(): Instrumentation!

Deprecated: Deprecated in Java.

Inheritors can access the instrumentation using this.

Return
Instrumentation! instrumentation

injectInsrumentation

Added in API level 1
Deprecated in API level 15
open fun injectInsrumentation(instrumentation: Instrumentation!): Unit

Deprecated: Incorrect spelling, use injectInstrumentation(android.app.Instrumentation) instead.

Injects instrumentation into this test case. This method is called by the test runner during test setup.

Parameters
instrumentation Instrumentation!: the instrumentation to use with this instance

injectInstrumentation

Added in API level 5
Deprecated in API level 24
open fun injectInstrumentation(instrumentation: Instrumentation!): Unit

Deprecated: Deprecated in Java.

Injects instrumentation into this test case. This method is called by the test runner during test setup.

Parameters
instrumentation Instrumentation!: the instrumentation to use with this instance

launchActivity

Added in API level 1
fun <T : Activity!> launchActivity(
    pkg: String!,
    activityCls: Class<T>!,
    extras: Bundle!
): T

Deprecated: Deprecated in Java.

Utility method for launching an activity.

The Intent used to launch the Activity is: action = Intent#ACTION_MAIN extras = null, unless a custom bundle is provided here All other fields are null or empty.

NOTE: The parameter pkg must refer to the package identifier of the package hosting the activity to be launched, which is specified in the AndroidManifest.xml file. This is not necessarily the same as the java package name.

Parameters
pkg String!: The package hosting the activity to be launched.
activityCls Class<T>!: The activity class to launch.
extras Bundle!: Optional extra stuff to pass to the activity.
Return
T The activity, or null if non launched.

launchActivityWithIntent

Added in API level 3
Deprecated in API level 24
fun <T : Activity!> launchActivityWithIntent(
    pkg: String!,
    activityCls: Class<T>!,
    intent: Intent!
): T

Deprecated: Deprecated in Java.

Utility method for launching an activity with a specific Intent.

NOTE: The parameter pkg must refer to the package identifier of the package hosting the activity to be launched, which is specified in the AndroidManifest.xml file. This is not necessarily the same as the java package name.

Parameters
pkg String!: The package hosting the activity to be launched.
activityCls Class<T>!: The activity class to launch.
intent Intent!: The intent to launch with
Return
T The activity, or null if non launched.

runTestOnUiThread

Added in API level 3
Deprecated in API level 24
open fun runTestOnUiThread(r: Runnable!): Unit

Deprecated: Deprecated in Java.

Helper for running portions of a test on the UI thread. Note, in most cases it is simpler to annotate the test method with android.test.UiThreadTest, which will run the entire test method on the UI thread. Use this method if you need to switch in and out of the UI thread to perform your test.

Parameters
r Runnable!: runnable containing test code in the Runnable#run() method

sendKeys

Added in API level 1
open fun sendKeys(keysSequence: String!): Unit

Deprecated: Deprecated in Java.

Sends a series of key events through instrumentation and waits for idle. The sequence of keys is a string containing the key names as specified in KeyEvent, without the KEYCODE_ prefix. For instance: sendKeys("DPAD_LEFT A B C DPAD_CENTER"). Each key can be repeated by using the N* prefix. For instance, to send two KEYCODE_DPAD_LEFT, use the following: sendKeys("2*DPAD_LEFT").

Parameters
keysSequence String!: The sequence of keys.

sendKeys

Added in API level 1
open fun sendKeys(vararg keys: Int): Unit

Deprecated: Deprecated in Java.

Sends a series of key events through instrumentation and waits for idle. For instance: sendKeys(KEYCODE_DPAD_LEFT, KEYCODE_DPAD_CENTER).

Parameters
keys Int: The series of key codes to send through instrumentation.

sendRepeatedKeys

Added in API level 1
open fun sendRepeatedKeys(vararg keys: Int): Unit

Deprecated: Deprecated in Java.

Sends a series of key events through instrumentation and waits for idle. Each key code must be preceded by the number of times the key code must be sent. For instance: sendRepeatedKeys(1, KEYCODE_DPAD_CENTER, 2, KEYCODE_DPAD_LEFT).

Parameters
keys Int: The series of key repeats and codes to send through instrumentation.

Protected methods

runTest

Added in API level 1
protected open fun runTest(): Unit

Deprecated: Deprecated in Java.

Runs the current unit test. If the unit test is annotated with android.test.UiThreadTest, the test is run on the UI thread.

Exceptions
java.lang.Throwable if any exception is thrown

tearDown

Added in API level 1
protected open fun tearDown(): Unit

Deprecated: Deprecated in Java.

Make sure all resources are cleaned up and garbage collected before moving on to the next test. Subclasses that override this method should make sure they call super.tearDown() at the end of the overriding method.

Exceptions
java.lang.Exception