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 Android with Open Source
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Matthias Käppler
February 22, 2010
Programming
0
120
Testing Android with Open Source
Matthias Käppler
February 22, 2010
Tweet
Share
More Decks by Matthias Käppler
See All by Matthias Käppler
Going Reactive - An Architectural Journey
mttkay
11
25k
Reactive SoundCloud - Tackling complexity in large applications
mttkay
35
4.4k
Conquering concurrency - bringing the Reactive Extensions to the Android platform
mttkay
40
6.4k
Calculon - A Java DSL for Android functional testing
mttkay
1
340
Qype API - Lessons learned
mttkay
2
190
Hands on the Gradle
mttkay
1
230
Secure Web services with OAuth
mttkay
3
150
Other Decks in Programming
See All in Programming
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
610
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
160
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
560
Apache Iceberg V3 and migration to V3
tomtanaka
0
120
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
430
Data-Centric Kaggle
isax1015
2
720
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
580
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
180
Oxlintはいいぞ
yug1224
5
1.2k
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
0
1k
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
390
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
170
Featured
See All Featured
Accessibility Awareness
sabderemane
0
44
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
170
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
55
49k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Optimizing for Happiness
mojombo
379
71k
Scaling GitHub
holman
464
140k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
86
Crafting Experiences
bethany
1
43
Documentation Writing (for coders)
carmenintech
77
5.2k
Transcript
Testing Android Testing Android with with Open Source Open Source
~ Matthias Käppler ~ ~ Matthias Käppler ~ February 23rd, 2010
1h Workshop 1h Workshop (1) Writing Android tests 5m (2)
Writing Android tests: Example 15m (3) Build management / Maven 5m (4) Build management / Maven: Example 15m (5) Build automation / Hudson 5m (6) Build automation / Hudson: Example 15m
Europe's leading local review site 17M uniques I'm the Android
guy at Qype.com!
Android testing Android testing How do we write tests for
Android?
Android testing Android testing As usual! Android uses JUnit 3
android.test: AndroidTestCase < junit.framework.TestCase InstrumentationTestCase < junit.framework.TestCase
Android testing Android testing AndroidTestCase ApplicationTestCase ProviderTestCase2 ServiceTestCase
Android testing Android testing InstrumentationTestCase (SyncBaseInstrumentation) (SingleLaunchActivityTestCase) ActivityUnitTestCase ActivityInstrumentationTestCase2
Android testing Android testing How do we run tests for
Android?
Android testing Android testing Using Instrumentation.
Android testing Android testing Work it!
Build management Build management Nice, we have tests now. But
my build server doesn't click buttons.
Build management Build management We need something that can run
builds from the command line.
Build management Build management Maven 2 does these sorts of
things. (and MUCH more, in fact)
Build management Build management Maven 2 is a build system.
Build management Build management Maven 2 is a dependency management
system.
Build management Build management Maven 2 is a life-cycle management
system.
Build management Build management Maven 2 is a report and
documentation generator.
Build management Build management In fact: Maven 2 is a
platform.
Build management Build management There's a plugin for Android! maven-android-plugin
Build management Build management Maven's central notion is the project.
It's described by the POM.
Android testing Android testing Let's have a look at one...
Build automation Build automation Nice, we can now build and
deploy our app from the command line. But we still have to do it manually.
Build automation Build automation What we need is a build
server, which automatically triggers builds.
Build automation Build automation Hudson does these sorts of things.
Build automation Build automation Hudson is a continuuous integration server.
It can run builds when people commit pieces of work. This is extremely helpful for discovering software regressions early on.
Build automation Build automation Hudson is a Java Web application.
It consists of a single WAR. $ java -jar hudson.war
Build automation Build automation Let's run it.
More information More information maven.apache.org code.google.com/p/maven-android-plugin hudson-ci.org