Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Testing in Android
Search
Soham Mondal
September 15, 2016
Technology
2
100
Testing in Android
A presentation on Testing in Android presented at the Mobile developer summit 2016.
Soham Mondal
September 15, 2016
Tweet
Share
More Decks by Soham Mondal
See All by Soham Mondal
Building Unstoppable Products v1.1
soham
0
120
Product Design as Your Competitive Edge
soham
0
130
Building Unstoppable Startups: Product Design as Your Competitive Edge
soham
0
170
Best Practices For Designing Apps For India - Devfest Bangalore 2022
soham
0
570
How (and Why) to be a data driven startup - THub Rubrix
soham
0
200
GFS - Startup School 2022
soham
0
680
Designing Experiences For Indian Users - T-Hub
soham
0
380
Designing_Products_For_Novice_Internet_Users_-_I.pdf
soham
0
160
Designing Products for Novice Internet Users - Opportunities & Problems
soham
1
270
Other Decks in Technology
See All in Technology
2025年の医用画像AI/AI×medical_imaging_in_2025_generated_by_AI
tdys13
0
190
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
260
さくらのクラウド開発ふりかえり2025
kazeburo
2
1.2k
[Neurogica] 採用ポジション/ Recruitment Position
neurogica
1
140
100以上の新規コネクタ提供を可能にしたアーキテクチャ
ooyukioo
0
290
Building Serverless AI Memory with Mastra × AWS
vvatanabe
1
760
Agent Skillsがハーネスの垣根を超える日
gotalab555
6
4.7k
AWSの新機能をフル活用した「re:Inventエージェント」開発秘話
minorun365
2
510
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
460
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
4.1k
コールドスタンバイ構成でCDは可能か
hiramax
0
120
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
67
Odyssey Design
rkendrick25
PRO
0
440
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The browser strikes back
jonoalderson
0
240
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
74
Information Architects: The Missing Link in Design Systems
soysaucechin
0
720
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Ethics towards AI in product and experience design
skipperchong
1
140
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Transcript
Testing in Android Soham Mondal Founder, Triveous
About me - Founder, Triveous - Creator, Voice Recorder -
Google Expert: UX - Android/UX consultant - Organizer at Blrdroid - Mentor at the Google Launchpad Accelerator
Agenda • Android architecture: MVP/MVVM/MVC? • What is Testing? Testing
principles • Types of Tests • Unit testing • Demo: Unit Testing • Instrumentation Testing • Demo: Instrumentation testing • Continuous Integration
Android Architecture • MVC: Model View Controller • MVP: Model
View Presenter • MVVM: Model View ViewModel • Clean Architecture by UncleBob
Clean Architecture • Framework • Slaves of the Framework •
Separate business logic from Framework • Activities/Fragments • Entanglement • Impacts Portability/Maintainability/Clarity of the solution
MVP • Presenter • Injecting presenter into Views • Can
unit test the presenter http://hannesdorfmann.com/mosby/mvp/
TESTING Testing helps create great, stable, maintainable and scalable apps
Testing Principles • Clean architecture • Understand what you’re trying
to test • Isolation • Integration • All possible scenarios • TDD
Type of Tests • Unit tests • Integration tests •
End to end tests (Instrumentation tests) http://googletesting.blogspot.in/2015/04/just-say-no-to-more-end-to-end-tests.html
Objective of Unit Testing? • Just the core functionality/business logic
• No external dependencies • Quick and predictable • All possible scenarios • TDD
Unit Testing • Options: Roboelectric, JUnit • Unit testing on
android studio • Mockito • PowerMock
Mockito -@mock -when/thenReturn -@spy -verify -@ArgumentCaptor
UNIT TEST DEMO
Objective: What are you testing? • End to end functionality
• UI • External dependencies • Longer • Flaky
Instrumentation tests • Options: Robotium, Espresso • Why is espresso
generally better? • Espresso test recorder in android studio • Support for firebase test lab
None
None
ESPRESSO DEMO
More Espresso • Espresso-Intents and Intent Stubbing • Espresso-Contrib for
DatePicker, RecyclerView, Drawer actions, Accessibility checks, CountingIdlingResource • Idling resources • Code coverage
CONTINUOUS INTEGRATION
CI • Jenkins • Travis/Circle CI/others • Integration with github
and others • Automated reporting: Email/Update slack • Deploy to play store
None