Top Banner
t 13926星期四
27

安小姐與詹先生的邂逅 Android + Jenkins

May 06, 2015

Download

Technology

PRADA Hsiung

the presentation for Android Taipei in EZTable. the topic is talk about the CI and Testing.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 安小姐與詹先生的邂逅 Android + Jenkins

t

13年9月26⽇日星期四

Page 2: 安小姐與詹先生的邂逅 Android + Jenkins

熊俊魁 Prada

70% Android

20% Server Dev10% iOS

13年9月26⽇日星期四

Page 3: 安小姐與詹先生的邂逅 Android + Jenkins

40,000,000 Downloads

13年9月26⽇日星期四

Page 4: 安小姐與詹先生的邂逅 Android + Jenkins

⼀一個Android Developer的成⻑⾧長故事

13年9月26⽇日星期四

Page 5: 安小姐與詹先生的邂逅 Android + Jenkins

死新⼿手

Hello world!runOnUiThread()

AsyncTask/Thread?

onPause >onResume > crash!

13年9月26⽇日星期四

Page 6: 安小姐與詹先生的邂逅 Android + Jenkins

正常的開發者

Service

Handler

秒寫Activity Life Cycle

Bitmap.recycle()Intent

13年9月26⽇日星期四

Page 7: 安小姐與詹先生的邂逅 Android + Jenkins

如果這時候轉職...

13年9月26⽇日星期四

Page 8: 安小姐與詹先生的邂逅 Android + Jenkins

有點厲害的開發者

Multi-Resolution

NDK Development

Hardware Fragmentation

13年9月26⽇日星期四

Page 9: 安小姐與詹先生的邂逅 Android + Jenkins

有點品味的開發者

Design Pattern

Concurrency Pattern

Active ObjectBalking patternDouble checked lockingGuarded suspensionLeaders/followers patternMonitor ObjectReactor patternRead write lock patternScheduler patternThread pool patternThread-Specific Storage...

BuilderFactorySingletenPrototypeBridgeFacadeProxyMediatorStrategyAdapterDecorator...

13年9月26⽇日星期四

Page 10: 安小姐與詹先生的邂逅 Android + Jenkins

對品質有點要求的開發者

Test Driven Development

Behavior Driven Development

Code Coverage

Joel Test

13年9月26⽇日星期四

Page 11: 安小姐與詹先生的邂逅 Android + Jenkins

Android⼤大⼤大

Team Leader

Boss...

Programer +

Tester +

Project Manager +

Designer +

13年9月26⽇日星期四

Page 12: 安小姐與詹先生的邂逅 Android + Jenkins

Android⼯工程師進化表

13年9月26⽇日星期四

Page 13: 安小姐與詹先生的邂逅 Android + Jenkins

這關詹先⽣生什麼事?

13年9月26⽇日星期四

Page 14: 安小姐與詹先生的邂逅 Android + Jenkins

其實每個英雄背後都有⼀一個很重要的阿福

13年9月26⽇日星期四

Page 15: 安小姐與詹先生的邂逅 Android + Jenkins

其實每個Android 開發者背後都有⼀一個很重要的詹⾦金絲

13年9月26⽇日星期四

Page 16: 安小姐與詹先生的邂逅 Android + Jenkins

Development != Coding

13年9月26⽇日星期四

Page 17: 安小姐與詹先生的邂逅 Android + Jenkins

Planning Coding

VersionControl

Build

Config

IssueTrack

Compile

Test Publish

13年9月26⽇日星期四

Page 18: 安小姐與詹先生的邂逅 Android + Jenkins

Planning Coding

VersionControl

Build

Config

IssueTrack

Compile

Test Publish

13年9月26⽇日星期四

Page 19: 安小姐與詹先生的邂逅 Android + Jenkins

有管家(⾃自動化)的好處?

13年9月26⽇日星期四

Page 20: 安小姐與詹先生的邂逅 Android + Jenkins

時間總被打斷E : 好我build⼀一下 PM > Engineer(E): 今天要release唷

E > PM: 我放到TestFlight囉PM > Tester(T):⿇麻煩去抓最新版本來測

T>E : (測到⼀一半) 好像有些東⻄西是舊的耶E>T : 我瞧瞧

E>T: 靠~少commit⼀一個東⻄西再等我⼀一下

E>T :再⿇麻煩您測試⼀一下

(過了20分鐘)

(過了30分鐘)

(過了30分鐘)

(過了20分鐘)

13年9月26⽇日星期四

Page 21: 安小姐與詹先生的邂逅 Android + Jenkins

避免神奇機器

你設定寫錯了吧

昨天在我電腦明明會動

怎麼可能!

你電腦有毒吧

資料沒清乾淨吧

環境設定沒寫好吧

⼯工具版本⽤用錯了吧

奇怪勒

13年9月26⽇日星期四

Page 22: 安小姐與詹先生的邂逅 Android + Jenkins

⼈人總會犯錯

我忘記加⼀一個參數

你拿到舊的Code

要連到測試Server才會正常少做⼀一個步驟啦

你少Checkout那個Plugin

有⼈人亂改我的Code!

你少Commit⼀一個檔案

13年9月26⽇日星期四

Page 23: 安小姐與詹先生的邂逅 Android + Jenkins

為什麼特別推薦詹⾦金絲?

13年9月26⽇日星期四

Page 24: 安小姐與詹先生的邂逅 Android + Jenkins

因為它跟安⼩小姐是同⼀一個媽媽(JAVA)⽣生出來的!

13年9月26⽇日星期四

Page 25: 安小姐與詹先生的邂逅 Android + Jenkins

很好⽤用很Fashion很好升級超多套件

還有⼿手機APP很好擴充(Scale out)

java -jar jenkins.war

web base UI

war蓋過去就是了

昨天看⼤大概有857個

https://play.google.com/store/apps/details?id=com.lmit.jenkins.android.activity&hl=zh_TW13年9月26⽇日星期四

Page 26: 安小姐與詹先生的邂逅 Android + Jenkins

Demo

https://github.com/bearprada/HelloAndroidTaipei

Cardinal Blue Calculator

1

100

5050

13年9月26⽇日星期四

Page 27: 安小姐與詹先生的邂逅 Android + Jenkins

13年9月26⽇日星期四