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
230
Hands on the Gradle
mttkay
1
250
Secure Web services with OAuth
mttkay
3
190
Other Decks in Programming
See All in Programming
初心者DevRelとして参加者だった私が、DevRel Talks!#2に登壇するまでにしてきたこと
sokohirai
0
160
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
500
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.8k
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
310
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
310
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.3k
AWS Transform Customによる Spring Boot 2.xから4.xへのVerUp
satoshi256kbyte
2
110
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
240
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.3k
Webエンジニアなのにブラウザの仕組みがわからないので、Pythonで自作してみた
tatsuki12
4
1.1k
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
220
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
170
Featured
See All Featured
Balancing Empowerment & Direction
lara
6
1.3k
Building the Perfect Custom Keyboard
takai
2
850
The untapped power of vector embeddings
frankvandijk
2
1.8k
Tell your own story through comics
letsgokoyo
1
1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Producing Creativity
orderedlist
PRO
348
40k
Are puppies a ranking factor?
jonoalderson
2
3.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
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