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
MCEConf Warsaw
Search
Felix Krause
April 21, 2016
Technology
2
430
MCEConf Warsaw
iOS and Android automation using fastlaner
Felix Krause
April 21, 2016
Tweet
Share
More Decks by Felix Krause
See All by Felix Krause
Trusting SDKs
krausefx
1
920
2017-10 Pragma: Getting started contributing to open source projects
krausefx
1
100
How to get get started contributing to open source
krausefx
3
670
Scaling Open Source Communities trySwift Tokyo
krausefx
2
1.3k
Scaling Open Source Communitites
krausefx
0
75
NSMeetup San Francisco
krausefx
1
170
fastlane - Felix Krause - Swift Language User Group
krausefx
1
24k
fastlane - Continuous Delivery for iOS Apps
krausefx
1
380
fastlane - Continuous Delivery for iOS Apps
krausefx
0
130
Other Decks in Technology
See All in Technology
【GPT-5本出版記念】npaka による AIの今とこれから と AI時代の生存戦略
npaka
2
600
AlarmKitで実現する 新時代のシステム通知
tsuzuki817
0
530
開発用LLMインフラをVSCode内で完結させる
ueponx
1
230
ZennとCloud Runの歩み - プロダクト開発に全集中できる相棒になるまで
wadayusuke
4
540
高セキュリティ要件を満たすためのiOSアプリ開発:MASVS v2.0.0対応から学ぶ実践知見
antony_kambara
0
360
株式会社島津製作所_研究開発(集団協業と知的生産)の現場を支える、OSS知識基盤システムの導入
akahane92
1
1.6k
2025-09-22 Iceberg, Trinoでのログ基盤構築と パフォーマンス最適化
kamijin_fanta
1
230
Sidekiq その前に:Webアプリケーションにおける非同期ジョブ設計原則
morihirok
14
4.2k
更高效率低成本的 Observability 2.0 時代即將來臨 (Observability 2.0 Why you need know) - DevOpsDays Taiwan 2025
shazi7804
0
310
Go Conference 2025: GoのinterfaceとGenericsの内部構造と進化 / Go type system internals
ryokotmng
3
150
品質保証に注目したAIプロダクト開発
sansantech
PRO
1
150
20250920_ServerlessDays
takuyay0ne
9
2.8k
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
3
110
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Designing for humans not robots
tammielis
254
25k
Automating Front-end Workflow
addyosmani
1371
200k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
What's in a price? How to price your products and services
michaelherold
246
12k
Raft: Consensus for Rubyists
vanstee
139
7.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
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