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

Testing and CI in Android

Testing and CI in Android

Talk on Testing and Continuous Integration/Delivery at Devfest-Blrdroid 2016

Soham Mondal

October 14, 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. - What is Testing? - Testing principles - Types of

    Tests - Unit testing/Instrumentation Testing - Architecture - Continuous Integration - Live Demos Agenda
  3. What is testing? Testing is an investigation conducted to see

    if a product satisfies its requirements or not
  4. Unit Testing - Objective of Unit Testing: What are you

    testing? - Business logic - No external dependencies - Options: Roboelectric, JUnit - Unit testing on android studio - Mockito/PowerMock
  5. Instrumentation Testing - Objective: What are you testing? - User

    Behavior/Dependencies/Integration - Options: Robotium, Espresso - Why is espresso generally better? - Espresso test recorder in android studio
  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. Architecture - MVP - MVVM - Unit testing the presenter

    http://hannesdorfmann.com/mosby/mvp/
  8. Why - Integrate - Build your code properly: Environment, Breakage

    - Everyone is on the same page - Run your tests - Code Coverage - Deploy: Continuous deployment - Build faster Solve problems quickly
  9. More espresso - Espresso-Intents and Intent Stubbing - Espresso-Contrib for

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