Added in API level 1
Deprecated in API level 24

ActivityTestCase


abstract class ActivityTestCase : InstrumentationTestCase
ActivityInstrumentationTestCase

This class provides functional testing of a single activity.

ActivityInstrumentationTestCase2

This class provides functional testing of a single activity.

ActivityUnitTestCase

This class provides isolated testing of a single activity.


This is common code used to support Activity test cases. For more useful classes, please see android.test.ActivityUnitTestCase and android.test.ActivityInstrumentationTestCase.

Summary

Public constructors

Protected methods
open Activity!

open Unit
scrubClass(testCaseClass: Class<*>!)

This function is called by various TestCase implementations, at tearDown() time, in order to scrub out any class variables.

open Unit
setActivity(testActivity: Activity!)

Set the activity under test.

Inherited functions
Instrumentation! getInstrumentation()

Inheritors can access the instrumentation using this.

Unit injectInsrumentation(instrumentation: Instrumentation!)

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

Unit injectInstrumentation(instrumentation: Instrumentation!)

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

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

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.

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

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.

Unit runTest()

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

Unit runTestOnUiThread(r: Runnable!)

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.

Unit sendKeys(vararg keys: Int)

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

Unit sendKeys(keysSequence: String!)

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").

Unit sendRepeatedKeys(vararg keys: Int)

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).

Unit tearDown()

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.

Public constructors

ActivityTestCase

ActivityTestCase()

Protected methods

getActivity

Added in API level 1
protected open fun getActivity(): Activity!

Deprecated: Deprecated in Java.

Return
Activity! Returns the activity under test.

scrubClass

Added in API level 1
protected open fun scrubClass(testCaseClass: Class<*>!): Unit

Deprecated: Deprecated in Java.

This function is called by various TestCase implementations, at tearDown() time, in order to scrub out any class variables. This protects against memory leaks in the case where a test case creates a non-static inner class (thus referencing the test case) and gives it to someone else to hold onto.

Parameters
testCaseClass Class<*>!: The class of the derived TestCase implementation.
Exceptions
java.lang.IllegalAccessException

setActivity

Added in API level 1
protected open fun setActivity(testActivity: Activity!): Unit

Deprecated: Deprecated in Java.

Set the activity under test.

Parameters
testActivity Activity!: The activity under test