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 and CI in Android
Search
Soham Mondal
October 14, 2016
Technology
3
270
Testing and CI in Android
Talk on Testing and Continuous Integration/Delivery at Devfest-Blrdroid 2016
Soham Mondal
October 14, 2016
Tweet
Share
More Decks by Soham Mondal
See All by Soham Mondal
Building Unstoppable Products v1.1
soham
0
54
Product Design as Your Competitive Edge
soham
0
75
Building Unstoppable Startups: Product Design as Your Competitive Edge
soham
0
110
Best Practices For Designing Apps For India - Devfest Bangalore 2022
soham
0
500
How (and Why) to be a data driven startup - THub Rubrix
soham
0
120
GFS - Startup School 2022
soham
0
580
Designing Experiences For Indian Users - T-Hub
soham
0
310
Designing_Products_For_Novice_Internet_Users_-_I.pdf
soham
0
90
Designing Products for Novice Internet Users - Opportunities & Problems
soham
1
200
Other Decks in Technology
See All in Technology
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
130
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
170
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1.3k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Into the Great Unknown - MozCon
thekraken
32
1.5k
How GitHub (no longer) Works
holman
310
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Transcript
Testing and CI in Android Soham Mondal https://speakerdeck.com/soham/testing-and-ci-in-android
You know it’s a good event if the first talk
of the day is on Testing
Soham Mondal - Founder, Triveous - Creator, Voice Recorder -
Google Expert: UX - Organizer at Blrdroid - Android/UX consultant
- What is Testing? - Testing principles - Types of
Tests - Unit testing/Instrumentation Testing - Architecture - Continuous Integration - Live Demos Agenda
What is testing? Testing is an investigation conducted to see
if a product satisfies its requirements or not
Testing Principles - Isolation - Integration - Scenarios
Unit Testing What are you testing?
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
Instrumentation Testing What are you testing?
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
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 vs End-to-End Tests http://googletesting.blogspot.in/2015/04/just-say-no-to-more-end-to-end-tests.html - Fast - Reliable -
Isolates Failures - Real User
Architecture - MVP - MVVM - Unit testing the presenter
http://hannesdorfmann.com/mosby/mvp/
Continuous Integration
https://infinum.co/the-capsized-eight/articles/a-ruby-on-rails-continous-integration-process-using-semaphore-github-codeclimate-and-hipchat
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
Options - Travis CI - Circle CI - BuddyBuild -
Jenkins
Cloud
None
None
Self-hosted
None
Running instrumentation Tests
None
None
None
Continuous Deployment
None
Demo: Travis and Unit Tests Soham Mondal https://github.com/s0h4m/toggle
Demo: Jenkins+Spoon and Instrumentation Tests Shivaraj Patil
Q&A @s0h4m |
[email protected]
More espresso - Espresso-Intents and Intent Stubbing - Espresso-Contrib for
DatePicker, RecyclerView, Drawer actions, Accessibility checks, CountingIdlingResource - Idling resources - Code coverage
None
None