#Overview - https://developer.android.com/training/testing
Advantage of Testing
Rapid feedback on failures.
Early failure detection in the development cycle.
Safer code refactoring, letting you optimize code without worrying about regressions.
Stable development velocity, helping you minimize technical debt.
Documentation
Fundamentals of Testing _ https://developer.android.com/training/testing/fundamentals
Set up project _ https://developer.android.com/training/testing/set-up-project
Build effective unit tests _ https://developer.android.com/training/testing/unit-testing/
Automate user interface tests _ https://developer.android.com/training/testing/ui-testing/
Test app component integrations _ https://developer.android.com/training/testing/integration-testing/
Test UI performance _ https://developer.android.com/training/testing/performance
Espresso _ https://developer.android.com/training/testing/espresso/index.html
UI Automator _ https://developer.android.com/training/testing/ui-automator
JUnit4 rules with Android X Test _ https://developer.android.com/training/testing/junit-rules
AndroidJUnitRunner _ https://developer.android.com/training/testing/junit-runner.html
Samples _ https://developer.android.com/training/testing/additional-resources