Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to Android Testing

Introduction to Android Testing

Soham Mondal

June 09, 2016
Tweet

More Decks by Soham Mondal

Other Decks in Technology

Transcript

  1. Soham Mondal - Founder, Triveous - Creator, Voice Recorder -

    Google Expert: UX - Organizer at Blrdroid - Android/UX consultant
  2. Agenda - Android architecture: MVP/MVVM/MVC? - What is Testing? Why

    should you care? - Testing principles - Types of Tests - Unit testing - Functional/Integration/UI testing - Codelab
  3. Architecture - Clean Architecture by UncleBob - MVC: Model View

    Controller - MVP: Model View Presenter - MVVM: Model View ViewModel
  4. MVP : Model View Presenter - Presenter - Injecting presenter

    into Views - Can unit test the presenter http://hannesdorfmann.com/mosby/mvp/
  5. Testing Principles - Clean architecture - Understand what you’re trying

    to test - Isolation - Integration - All possible scenarios - TDD
  6. Types of Tests - Unit tests - Integration tests -

    End to end tests http://googletesting.blogspot.in/2015/04/just-say-no-to-more-end-to-end-tests.html
  7. Unit Testing - Objective of Unit Testing: What are you

    testing? - Options: Roboelectric, JUnit - Unit testing on android studio - JUnit - Mockito - PowerMock
  8. UI/Functional/Integration testing - Objective: What are you testing? - Options:

    Robotium, Espresso - Why is espresso generally better? - Espresso overview - Espresso test recorder in android studio - Support for firebase test lab
  9. More espresso - Espresso-Intents and Intent Stubbing - Espresso-Contrib for

    DatePicker, RecyclerView, Drawer actions, Accessibility checks, CountingIdlingResource - Idling resources - Code coverage