YoVDO

Effective Android Testing for Mobile Developers

Offered By: LinkedIn Learning

Tags

Android Development Courses Unit Testing Courses Mockito Courses Test-Driven Development Courses Dependency Injection Courses

Course Description

Overview

Explore effective testing techniques for Android by walking through an app development workflow where testing is integrated throughout the process.

Syllabus

Introduction
  • Welcome
  • What you should know
  • Using the exercise files
1. Testing Considerations
  • Why test?
  • Types of tests
  • Local vs. on-device
2. Test as You Go
  • The sample app
  • Smallest unit first
  • TDD: Red, Green, Refactor, part 1
  • TDD: Red, Green, Refactor, part 2
  • Code coverage
  • UI-less on-device test: RecipeStore
  • UI-less on-device test: Setup
  • UI-less on-device test: Null test
  • UI-less on-device test: Count test
  • UI-less on-device test: Lookup test
3. UI Testing
  • RecyclerView
  • Showing Recipes in MainActivity
  • RecipeActivity: Layout
  • RecipeAdapter: OnClickListener
  • RecipeActivity: Loading a recipe
  • Vector drawable: Create
  • Vector drawable: Use
  • SharedPreferencesFavorites
  • Favorite: OnClickListener
  • RecipeActivityTest: An espresso test
4. Hermetic Environment
  • Test doubles
  • Dependency injection
  • InMemoryFavorites
  • RecipeApplication
  • TestRecipeApplication
  • CustomTestRunner
  • Test state: Setup
  • Test state: Test
5. Robot Pattern
  • What vs. How
  • ScreenRobot
  • RecipeRobot
  • Clear favorites
  • Separation of concerns
6. Model-View-Presenter
  • Introduction
  • View Interface and Presenter
  • Refactor: Load recipe
  • Refactor: Show error
  • Refactor: Show recipe
  • Refactor: Toggle favorite
  • Mockito: Intro
  • Mockito: Setup
  • Testing with MVP: recipeNotFound()
  • Testing with MVP: Exception
  • Testing with MVP: ArgumentCaptor
  • Summary
Conclusion
  • Next steps

Taught by

Chiu-Ki Chan

Related Courses

Creative, Serious and Playful Science of Android Apps
University of Illinois at Urbana-Champaign via Coursera
Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld Systems
Vanderbilt University via Coursera
Android. Programación de Aplicaciones
Miríadax
Programming Mobile Applications for Android Handheld Systems: Part 1
University of Maryland, College Park via Coursera
Begin Programming: Build Your First Mobile Game
University of Reading via FutureLearn