page.title=Testing Your Android Activity
page.tags=testing

trainingnavtop=true
startpage=true

@jd:body

<div id="tb-wrapper">
<div id="tb">

<!-- Required platform, tools, add-ons, devices, knowledge, etc. -->
<h2>Dependencies and prerequisites</h2>
<ul>
  <li>Android 2.2 (API Level 8) or higher.</li>
</ul>

<h2>You Should Also Read</h2>
<ul>
<li><a href="{@docRoot}tools/testing/index.html">Testing
(Developer's Guide)</a></li>
</ul>

</div>
</div>

<p>You should be writing and running tests as part of your Android application
development cycle. Well-written tests can help you to catch bugs early in
development and give you confidence in your code.</p>

<p>A <em>test case</em> defines a set of objects and methods to run multiple
tests independently from each other. Test cases can be organized into
<em>test suites</em> and run programmatically, in a repeatable manner, with
a <em>test runner</em> provided by a testing framework.</p>

<p>The lessons in this class teaches you how to use the Android's custom
testing framework that is based on the popular JUnit framework. You can
write test cases to verify specific behavior in your application, and check for
consistency across different Android devices. Your test cases also serve as a
form of internal code documentation by describing the expected behavior of
app components.</p>

<h2>Lessons</h2>

<!-- Create a list of the lessons in this class along with a short description
of each lesson. These should be short and to the point. It should be clear from
reading the summary whether someone will want to jump to a lesson or not.-->

<dl>
  <dt><b><a href="preparing-activity-testing.html">Setting Up Your Test
Environment</a></b></dt>
    <dd>Learn how to create your test project.</dd>
  <dt><b><a href="activity-basic-testing.html">Creating and Running a Test 
Case</a></b></dt>
    <dd>Learn how to write test cases to verify the
expected properties of your {@link android.app.Activity}, and run the test
cases with the {@code Instrumentation} test runner provided by the Android
framework.</dd>
  <dt><b><a href="activity-ui-testing.html">Testing UI Components</a></b></dt>
    <dd>Learn how to test the behavior of specific UI
components in your {@link android.app.Activity}.</dd>
  <dt><b><a href="activity-unit-testing.html">Creating Unit Tests</a></b></dt>
    <dd>Learn how to how to perform unit testing to
verify the behavior of an Activity in isolation.</dd>
  <dt><b><a href="activity-functional-testing.html">Creating Functional Tests</a></b></dt>
    <dd>Learn how to perform functional testing to
verify the interaction of multiple Activities.</dd>

