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
Matthias Käppler
February 22, 2010
Programming
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Testing Android with Open Source
Matthias Käppler
February 22, 2010
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
34
4.5k
Conquering concurrency - bringing the Reactive Extensions to the Android platform
mttkay
40
6.5k
Calculon - A Java DSL for Android functional testing
mttkay
1
360
Qype API - Lessons learned
mttkay
2
220
Hands on the Gradle
mttkay
1
250
Secure Web services with OAuth
mttkay
3
190
Other Decks in Programming
See All in Programming
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.1k
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
260
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
140
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
220
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
310
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
590
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.7k
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
210
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
620
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
350
Featured
See All Featured
Prompt Engineering for Job Search
mfonobong
0
400
Thoughts on Productivity
jonyablonski
76
5.3k
Building the Perfect Custom Keyboard
takai
2
830
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
890
Raft: Consensus for Rubyists
vanstee
141
7.6k
GitHub's CSS Performance
jonrohan
1033
470k
RailsConf 2023
tenderlove
30
1.5k
WENDY [Excerpt]
tessaabrams
11
39k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
270
My Coaching Mixtape
mlcsv
0
210
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
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