Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
弊社のアプリ開発CI環境
Search
yamacraft
May 10, 2017
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
弊社のアプリ開発CI環境
2017/05/10 Android Testing Bootcamp#6にて発表した資料です
yamacraft
May 10, 2017
More Decks by yamacraft
See All by yamacraft
なぜアプリのデザインとその実装はうまくいかないのか?
yamacraft
0
230
あんまり触れられてない気がする、Kotlin1.3の ありがたい追加機能
yamacraft
0
3.3k
ありがたいUIをもっと大事にしたい
yamacraft
2
2.5k
Quickstart-android/mlkitについて
yamacraft
2
5.2k
Firebase関連をCIでデプロイするときのTips
yamacraft
0
5.1k
開発用途で Realtime Databaseを 導入した話
yamacraft
2
4.7k
ciecleci/androidのOpenSSLに気をつけよう
yamacraft
0
750
Realtime Databaseに向いてる・向いてないサービス
yamacraft
0
990
社内用アプリでFirebaseを使っている話
yamacraft
2
2.1k
Other Decks in Technology
See All in Technology
Making AI Agents Safe and Fast- Jev, Obsidian, and the Meta-Harness
x5gtrn
PRO
0
160
AI臭い文章とは何なのか
nasuvitz
36
75k
AIに賢く動いてもらうためのコンテキスト〜Snowflake女子会 vol.8
snowwmn0824
0
200
AI Native Platform Engineering 〜PlatformとAgileで“作る速さ”を“価値”へ〜
uya116
0
490
DORA_Metrics.pdf
wagnerfusca
1
140
企業の現実世界をグラフで写し取る
sansantech
PRO
0
200
個別開発で終わらせない。 現場の課題をプロダクトの強さに変える StockmarkのFDE
ktkrhr
0
420
Meet AgentCore Identity Consent Portal
hironobuiga
2
130
可視化から始めたAI駆動開発_ochi_ver1.01 / AI-Driven Development Starting with Visualization_ver1.01
yayoi_dd
0
110
1人アドミンな私はAWSアカウント申請をSlackで完結したい!
ysuzuki
0
100
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
A Tale of Four Properties
chriscoyier
163
24k
30 Presentation Tips
portentint
PRO
1
410
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
850
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Agile that works and the tools we love
rasmusluckow
331
22k
WENDY [Excerpt]
tessaabrams
14
39k
Transcript
ฐࣾͷΞϓϦ։ൃCIڥ @yamacraft
profile • @yamacraft (Wataru Yamada) • Mobile Application Engineer •
LeadingMark, inc • team Y.G.E.(private)
None
None
دߘͯ͠·͢ʂ • ൃചதʂʂ • Android 7.0/7.1 • Firebase (Android/iOS) •
Analytics • Notifications
ฐࣾͷΞϓϦ։ൃͷ CIڥʹ͍ͭͯ
લఏ • ΞϓϦΤϯδχΞগνʔϜʢ̍ʙ໊̎ʣ • ༧ࢉগͳ͍ʢ≠·ͬͨ͘ͳ͍ʣ • iOSͷCIߟྀʢಉҰԽ͓͖͍ͯͨ͠ʣ • ֎෦ͷWebαʔϏεʹཔΔબ͕Մೳ
None
։ൃϑϩʔʹ͍ͭͯ
Git Flow
Git Flowͷཧ༝ • ϦϦʔενΣοΫதʹ։ൃ͕ਐΉՄೳੑ • ݱࡏͷϦϦʔε͍ͯ͠Δόʔδϣϯͷίʔυʹ masterͷ࠷৽ίʔυͱ͔ͨͬͨ͠ • ςετྔ͕ബ͍ʢ͜͜ॏཁʣ •
GitHub FlowςετʹΑΔ࣭νΣοΫ͕ख ް͍͜ͱʴଈϦϦʔε͕લఏͱ͍͏ೝࣝ
Git Flowͷ՝ • GitHubͷPRͰreleasehotfixͷϚʔδΛ͢Δ ͷ͕໘ • ʢϚʔδͷʣॱ൪ͱ͔ؒҧ͑ͯڐ༰͢Δ ͍৺Ͱ…
Jenkins
Jenkinsͷ࠾ཧ༝ • ͱ͍͏ΑΓWebαʔϏε͔mac miniΛ͏͔ͱ͍͏બ • iOSΞϓϦͷϏϧυߟྀ͢Δඞཁ͕͋ͬͨʢҰ൪ͷཧ༝ʣ • CircleCIͩͱʢ࠷খϓϥϯͰʣ݄$39 • AppleCareͰϝϞϦੵΜͩmac
mini͕100,000ԁ • ڥʢSDKAVDʣΛͪ͜ΒଆͰίϯτϩʔϧͰ͖Δ • Android͚ͩͳΒଞʹબࢶ͋Δͱࢥ͍·͢
JenkinsΛ͏࣌ͷҙ • Ͱ͖ΔݶΓଐਓੑΛഉআ͢Δ • δϣϒݶΓͳ͘γϯϓϧʹ • δϣϒͰΔ͜ͱɺઐ༻ͷ γΣϧΛୟ͚ͩ͘ʹ͢Δ • γΣϧ༰ϦϙδτϦཧ
ʹͳΔͷͰศར
Jenkinsͷ՝ • ͦΕͰଐਓੑൈ͚͖Εͳ͍… • ಛʹϓϥάΠϯपΓͷઃఆ • ϝϯςίετ͕Ͳ͏ͯ͠ߴ͘ͳΓ͕ͪ • mac miniͦͷͷͷϝϯςߟྀ͕ඞཁ
ςετ
ݴ͏΄Ͳͳ͍ʂ
ͳͷͰɺݸਓతͳओுΛ
ςετͷࢦʹ͍ͭͯ • ެࣜͷςετΨΠυΛ९क͢Δ • https://developer.android.com/studio/test/index.html • ΧόϨοδ͕100%ʹͰ͖ΔͳΒɺͬͨํ͕ྑ͍ • େࣄͳ͜ͱɺೖྗʹର͢Δग़ྗ݁Ռ •
ςετίʔυͷϝϯςͰۤ͠Ή͙Β͍ͳΒɺਓͷखʹ ΑΔςετΛ৴ͯ͡ҕͶ͍ͨ…
ʢਓྗςετͰʣ ԿมΘͬͯͳ͍͜ͱΛ νΣοΫ͢Δͷ ͠ΜͲ͍ΑͶ
Appium͍͍ΑͶ… • SeleniumͷΞϓϦ൛ • Τϛϡ͚ͩͰͳ͘ɺ࣮ػͰಈ࡞தͷΞϓϦʹରͯ͠ς ετΛ࣮ߦͰ͖Δ • ͪͳΈʹಉ͡Α͏ͳUIςετπʔϧΛGoogleఏڙ͠ ͍ͯΔʢMonkeyRunnerʣ •
୯७ͳUIૢ࡞ςετͳΒAppiumͰͬͯ͠·͍͍ͨ
AppiumςετΘ͔ΒΜ…
None
Magic Podͱ • UIςετͷࣗಈԽαʔϏεʢΫϩʔζυβલʣ • σΟʔϓϥʔχϯάΛͬͯΩϟϓը૾͔ΒϘλϯͳͲΛೝࣝ ͯ͘͠ΕΔ • Appiumͷςετ͕؆୯ʹ࡞ΕΔʂʢ͍͍͘͢͝ʂʣ •
͜ͷษڧձͷୈ̐ճͰհ͞Ε͍ͯͨαʔϏεͰ͢ • http://blog.trident-qa.com/2016/10/ introduce_magic_pot/
αϯϓϧʢiOSΞϓϦʣ
MagicPodͰͬͯΔ͜ͱʗ Γ͍ͨ͜ͱ • ਓͷखͰΔͱʮࡶʯʹͳΓ͕ͪͳςετΛ ஔ͖͍͑ͯ͘ • ୯७ͳUIૢ࡞ʹΑΔը໘ભҠ • ʮมߋʹΑΔఆ֎ͷӨڹʯ͕ͳ͍͜ͱͷ ֬ೝ
CIͷൃՐλΠϛϯά • feature/xxxʼdevelopɺhotfix ͷPRɺrelease/xxxͷߋ৽ • ςετʴ֬ೝ༻APKͷϏϧυͱ • developͷߋ৽ʴຖேX࣌ • Magic
Podͷ࣮ࢪ • masterͷߋ৽ • APKͷϏϧυͱɺGoogle PlayͷΞοϓϩʔυ
ࠓޙͷ՝ • mac miniͷߏཧʗJenkinsͷόοΫΞοϓ • ςετͷްΈ͕૿͑ͨͱ͖ͷʮςετ͔࣌ؒ ͔Γ͗͢ʯ • ػछґଘͷࣄલνΣοΫࠓޙղܾͰ͖ͦ ͏ʹͳ͍
ΑΖ͓͘͠ئ͍͠·͢ʂ
͓͠·͍