to top
Android APIs
Sample Code >

SpinnerTest - SpinnerTest

← Back

This sample is the test application for the Activity Testing tutorial. It tests the Spinner example application.

The test application uses the ActivityInstrumentationTestCase2 test case class, which extends both Android instrumentation and the JUnit TestCase class. The test runner is InstrumentationTestRunner.

The application shows how to set up a test application project, how to create the AndroidManifest.xml file for a test application, and how to set up a test case class for a test fixture. The test case class, SpinnerActivityTest, contains tests that demonstrate the following Android test patterns:

  • Test setup: The setUp() method re-initializes the state of the application under test before each test is run.
  • Initial conditions: The testPreconditions() method demonstrates how to test that the application under test is properly initialized prior to running the test fixture.
  • UI interaction: The testSpinnerUI() method demonstrates how to send keystrokes to the activity under test and then test the result.
  • Application control using instrumentation: The testStateDestroy() and testStatePause() methods demonstrate how to use instrumentation to trigger stages in the lifecycle of the activity under test.

The manifest declares an <instrumentation> element that links the test application with the application under test. Specifically, the element's android:name attribute specifies InstrumentationTestRunner as the instrumentation to use. The android:targetPackage attribute specifies as the name of the Android package that contains the application under test.

The initial user interface for the Spinner sample application The JUnit view in Eclipse with ADT, showing a successful test run of SpinnerTest