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
MCEConf Warsaw
Search
Felix Krause
April 21, 2016
Technology
440
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MCEConf Warsaw
iOS and Android automation using fastlaner
Felix Krause
April 21, 2016
More Decks by Felix Krause
See All by Felix Krause
Trusting SDKs
krausefx
1
980
2017-10 Pragma: Getting started contributing to open source projects
krausefx
1
110
How to get get started contributing to open source
krausefx
3
700
Scaling Open Source Communities trySwift Tokyo
krausefx
2
1.4k
Scaling Open Source Communitites
krausefx
0
89
NSMeetup San Francisco
krausefx
1
190
fastlane - Felix Krause - Swift Language User Group
krausefx
1
24k
fastlane - Continuous Delivery for iOS Apps
krausefx
1
400
fastlane - Continuous Delivery for iOS Apps
krausefx
0
150
Other Decks in Technology
See All in Technology
クロスボーダーM&AのValue Upを支えるプロダクト開発。日米チームのハブになったプロダクトエンジニアの実践 / Product Engineering Conference 2026
genda
0
120
安心して変更できるWebフロントエンドの作り方
pirosikick
4
2k
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
350
AIを活用するために決めた "やらないこと" - 価値に注目する / Not betting on AI
soudai
PRO
1
460
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
1
240
登壇の自信を奪う3匹のオバケ / 3 Ghosts That Rob You of Your Confidence in Public Speaking
pauli
8
720
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
1
280
Minecraft JavaのMODをSwiftで作る
1mash0
0
140
Gitは怖い?共有ワークスペースから始めるSnowflakeチーム開発
coco_se
0
200
Podは生きているのにGoだけが落ちる:GOGCとGOMEMLIMITで追うInvisible OOM Killの謎
tkc66buzz
1
680
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
5
25k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
520
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
520
Agile that works and the tools we love
rasmusluckow
331
22k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
520
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
450
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
sira's awesome portfolio website redesign presentation
elsirapls
0
410
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
790
Transcript
Felix Krause @KrauseFx HOW WOULD YOU LIKE 2 EXTRA HOURS
EVERY WEEK?
• “We can’t release, Chris is currently on vacation” •
“The provisioning profiles doesn’t contain all devices?” • “We can’t release an update, the build is broken” • “We need the latest screenshots for the website” • “Uh, that bug fix is not worth a new release” @KrauseFx
Release Day • Testing • Screenshots • Build • Signing
Issues • Prepare Push Certificate • Upload • Processing • Submit
None
None
Goals • Automatic Deployment • Version Control • Developer Independent
CREATING SCREENSHOTS CODE SIGNING AUTOMATING DEPLOYMENT < >
SCREENSHOTS
300 screenshots
... button.tap() snapshot("1LandingScreen") ...
... public void testTakeScreenshot() { Screengrab.screenshot("before_button_click"); onView(withId(R.id.fab)).perform(click()); } ...
None
< > PROVISIONING PROFILES
None
Build Your App Code Signing Certificate Provisioning Profile Building &
Signing Signed IPA
$ cert $ sigh $ gym
None
https://codesigning.guide
None
None
None
AUTOMATING DEPLOYMENT
Beta Deployment 1. Version Bump 2. Commit & Push 3.
Provisioning Profile 4. Build 5. Export 6. Upload 7. Add Release Notes 8. Distribute
None
None
None
None
None
$ fastlane beta
None
None
None
None
Spaceship.login("
[email protected]
") cert = Spaceship.certificate.production.all.first app = Spaceship.application.find("com.krausefx.app")
None
None
https://github.com/fastlane/boarding
https://github.com/fastlane/boarding
None
None
None
Until Now 1. Clone repo 2. Check out branch 3.
Build and install on simulator 4. Navigate in app to find the right view
None
None
What’s Next? https://fastlane.tools @KrauseFx
Thank You @KrauseFx