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
Introduction to Android Testing
Search
Soham Mondal
June 09, 2016
Technology
1
170
Introduction to Android Testing
Soham Mondal
June 09, 2016
Tweet
Share
More Decks by Soham Mondal
See All by Soham Mondal
Building Unstoppable Products v1.1
soham
0
130
Product Design as Your Competitive Edge
soham
0
140
Building Unstoppable Startups: Product Design as Your Competitive Edge
soham
0
180
Best Practices For Designing Apps For India - Devfest Bangalore 2022
soham
0
580
How (and Why) to be a data driven startup - THub Rubrix
soham
0
220
GFS - Startup School 2022
soham
0
690
Designing Experiences For Indian Users - T-Hub
soham
0
390
Designing_Products_For_Novice_Internet_Users_-_I.pdf
soham
0
170
Designing Products for Novice Internet Users - Opportunities & Problems
soham
1
280
Other Decks in Technology
See All in Technology
マルチアカウント環境でSecurity Hubの運用!導入の苦労とポイント / JAWS DAYS 2026
genda
0
820
今のWordPress の制作手法ってなにがあんねん?(改) / What’s the Deal with WordPress Development These Days?
tbshiki
0
500
猫でもわかるKiro CLI(AI 駆動開発への道編)
kentapapa
0
240
[E2]CCoEはAI指揮官へ。Bedrock×MCPで構築するコスト・セキュリティ自律運用基盤
taku1418
0
180
決済サービスを支えるElastic Cloud - Elastic Cloudの導入と推進、決済サービスのObservability
suzukij
2
650
Sansanでの認証基盤内製化と移行
sansantech
PRO
0
540
NewSQL_ ストレージ分離と分散合意を用いたスケーラブルアーキテクチャ
hacomono
PRO
4
380
SRE NEXT 2026 CfP レビュアーが語る聞きたくなるプロポーザルとは?
yutakawasaki0911
1
400
DevOpsエージェントで実現する!! AWS Well-Architected(W-A) を実現するシステム設計 / 20260307 Masaki Okuda
shift_evolve
PRO
3
920
アーキテクチャモダナイゼーションを実現する組織
satohjohn
1
1k
脳内メモリ、思ったより揮発性だった
koutorino
0
370
A Casual Introduction to RISC-V
omasanori
0
140
Featured
See All Featured
Visualization
eitanlees
150
17k
エンジニアに許された特別な時間の終わり
watany
106
240k
Paper Plane
katiecoart
PRO
0
48k
A Modern Web Designer's Workflow
chriscoyier
698
190k
WENDY [Excerpt]
tessaabrams
9
36k
Exploring anti-patterns in Rails
aemeredith
2
290
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
390
AI: The stuff that nobody shows you
jnunemaker
PRO
3
450
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
150
Become a Pro
speakerdeck
PRO
31
5.8k
Designing for Performance
lara
611
70k
sira's awesome portfolio website redesign presentation
elsirapls
0
190
Transcript
Introduction to Testing Soham Mondal
Soham Mondal - Founder, Triveous - Creator, Voice Recorder -
Google Expert: UX - Organizer at Blrdroid - Android/UX consultant
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
Architecture - Clean Architecture by UncleBob - MVC: Model View
Controller - MVP: Model View Presenter - MVVM: Model View ViewModel
MVP : Model View Presenter - Presenter - Injecting presenter
into Views - Can unit test the presenter http://hannesdorfmann.com/mosby/mvp/
What is 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
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
Unit Testing - Objective of Unit Testing: What are you
testing? - Options: Roboelectric, JUnit - Unit testing on android studio - JUnit - Mockito - PowerMock
Mockito - @mock - when/thenReturn - @spy - verify -
@ArgumentCaptor
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
None
None
More espresso - Espresso-Intents and Intent Stubbing - Espresso-Contrib for
DatePicker, RecyclerView, Drawer actions, Accessibility checks, CountingIdlingResource - Idling resources - Code coverage
Codelab https://codelabs.developers.google.com/codelabs/android-testing/index.html
Q&A @s0h4m |
[email protected]