Fragments 2017

Fragments 2017

A conference on the mobile ecosystem in India

Kapil Bakshi

@kapilbakshi

All about Android Production Level App Testing and Continuous Integration and What's New

Submitted Jul 24, 2017

This talk will help you by taking an example of a production level app involving good business logic .We’ll see how Espresso can help us write smooth UI tests and also how we can use Firebase Test Labs to run tests on cloud on different devices and achieve continuous integration using Circle CI and also what more can be achieved using AWS Device Farm with Jenkins.

We’ll also see how to properly unit test your app by taking an example of proper production level scenarios , how to use dagger 2 for dependency injection to make Unit Testing very smooth and Efficient.

We’ll also see how we can make Unit Testing efficient by using Roboelectric and how to can it be further optimised using MVVM Architecture, Repository Pattern and much more.

And Yes....!!! We’ll be seeing New Features of Android Test Support 1.0 Library on Our Production Level App. Yessss!!!! You heard it right..!!!!!

Outline

This talk is divided into the following 5 parts :-

** 1.) Important Testing GuideLines **
-> Different types of Testing
-> Flakiness
-> ** Hero Hermetic ** to mitigate Flakiness
-> Unit Tests vs Integration Tests

** 2.) Deep Dive Into Eespresso **
-> Why Espresso ?
-> Espresso Commands At a glance
-> Espresso Synchronization
-> Idling Resource
-> Custom Idling Resource
-> Espresso is Sad :( Flakiness All Around
-> Hypnotic Effect of Espresso Intents - Let’s Mock’em
-> Demo on a Production level App

** 3.) UI Automator **
-> Advantages
-> Examples

** 4.) Feel The Fire , Take Testing a Level Higher With Firebase Test Labs **
-> Test on Multiple Devices
-> Robo Tests
-> Run From Android Studio
-> Get Very Detailed Reports

** 5.) Continuous Integration With Circle CI AND AWS Device Farm With Jenkins**
-> What is Continuous Integration ?
-> Circle.yml
-> Caching in Circle CI
-> Circle CI with Firebase Test labs using gCloud
-> What’s more in AWS Device Farm

** 6.) What’s new in Android Test Support Library**
-> Android Test Orchestrator
-> New Features Of AndroidJUnitRunner
-> Espresso 3.0 New Features
-> New Test Rules

##**Sneak Peek **

Requirements

Passion and Urge to improve your App’s quality, development and deployment processes :) :)
Laptop with Android Studio installed

Speaker bio

Kapil Bakshi is a very passionate techie with an aim to embrace technology, imbibe every bit of it, transcend all the barriers and turn ideas into reality. His experience spans across edtech, fintech and logistics sectors where he has developed things from scratch taking them to a level where they have scaled drastically and have become a brand in their respective domains.

He has recently joined BlackBuck which is redefining the logistics landscape of India, making it reliable and efficient. Kapil is playing an important role there to improve quality of all apps, doing optimisations and helping the company scale to go much beyond.

Apart from Android, he has worked on Backend technologies as well and many times single-handedly built complex features which have proven to be very beneficial for business.

In Android, his areas of interest include testing, architectural best practices and security.

Slides

https://docs.google.com/presentation/d/1mtMS1BJ8rLjeDTzgHs26D5DWpcF-VhzvnfAjrdiqkhg/edit?usp=sharing

Comments

{{ gettext('Login to leave a comment') }}

{{ gettext('Post a comment…') }}
{{ gettext('New comment') }}
{{ formTitle }}

{{ errorMsg }}

{{ gettext('No comments posted yet') }}

Hosted by

How do you make a great mobile experience? Explore with Fragments. Follow Fragments on Twitter more