Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Toshiyuki Hirata
PPTX, PDF
2,621 views
fastlane snapshotの並列実行についてまとめてみた
iOS Test Night #6 - 1周年 - の発表資料です。
Technology
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 15
2
/ 15
3
/ 15
4
/ 15
5
/ 15
6
/ 15
7
/ 15
8
/ 15
9
/ 15
10
/ 15
11
/ 15
12
/ 15
13
/ 15
14
/ 15
15
/ 15
More Related Content
PPTX
DeNAにおけるSWETの役割
by
Toshiyuki Hirata
PPTX
Xcode10での テスト周りの進化をふりかえる
by
Toshiyuki Hirata
PPTX
コードレビューをより良くする Danger x Android
by
Toshiyuki Hirata
PPTX
fastlane x iOSアプリのCI
by
Toshiyuki Hirata
PPTX
2017年のiOSアプリ開発におけるCI事情
by
Toshiyuki Hirata
PPTX
Bluepillを使ったiOS自動テストの並列化
by
Toshiyuki Hirata
PPTX
iOSアプリ開発のCI環境 - Jenkins編 -
by
Toshiyuki Hirata
PPTX
iOSアプリの自動テストをはじめよう
by
Toshiyuki Hirata
DeNAにおけるSWETの役割
by
Toshiyuki Hirata
Xcode10での テスト周りの進化をふりかえる
by
Toshiyuki Hirata
コードレビューをより良くする Danger x Android
by
Toshiyuki Hirata
fastlane x iOSアプリのCI
by
Toshiyuki Hirata
2017年のiOSアプリ開発におけるCI事情
by
Toshiyuki Hirata
Bluepillを使ったiOS自動テストの並列化
by
Toshiyuki Hirata
iOSアプリ開発のCI環境 - Jenkins編 -
by
Toshiyuki Hirata
iOSアプリの自動テストをはじめよう
by
Toshiyuki Hirata
What's hot
PPTX
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
by
Toshiyuki Hirata
PPTX
UIテストの実行時間の短縮の方法
by
Toshiyuki Hirata
PPTX
DroidKaigi_devicefarm
by
Shunsuke Maeda
PPTX
STFとAppiumをもちいたAndroidアプリの自動テスト
by
Toshiyuki Hirata
PPTX
Dangerでpull requestレビューの指摘事項を減らす
by
Shunsuke Maeda
PPTX
Pull request時の画面差分取得の自動化
by
Shunsuke Maeda
PDF
Androidのテストを効率的にするために考えたこと
by
Ataru Osaka
PDF
iOSで利用できるデバイスファームのメリット・デメリットの紹介
by
Shunsuke Maeda
PPTX
iOSアプリにおけるリリースフローとCI環境
by
Toshiyuki Hirata
PPTX
バージョンアップ対応を軽減するサービス:マスティフ
by
Toshiyuki Hirata
PPTX
Xcodeの管理を楽に - Jenkins編 -
by
Toshiyuki Hirata
PPTX
Androidアプリ開発のテスト環境
by
Toshiyuki Hirata
PPTX
マスティフ (for Xcode beta) - バージョンアップ対応を軽減するためのサービス
by
Toshiyuki Hirata
PDF
Xcode 7におけるUIテストとカバレジ計測 #yidev 第20回勉強会
by
Koji Hasegawa
PPTX
バージョンアップの対応を軽減するためのサービスの構築
by
Toshiyuki Hirata
PPTX
JaSST'16 Tokyo モバイルセッション
by
mirer
PDF
Jenkins Bootcamp Premiumのご紹介 in デブサミ2016冬
by
Masanori Satoh
PPTX
Android e2e testing at mercari
by
Vishal Banthia
PDF
iOSにおけるコードレビューを一歩先へ進める
by
Shunsuke Maeda
PPTX
スマホアプリディレクターが考えていること
by
Kazuaki KURIU
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
by
Toshiyuki Hirata
UIテストの実行時間の短縮の方法
by
Toshiyuki Hirata
DroidKaigi_devicefarm
by
Shunsuke Maeda
STFとAppiumをもちいたAndroidアプリの自動テスト
by
Toshiyuki Hirata
Dangerでpull requestレビューの指摘事項を減らす
by
Shunsuke Maeda
Pull request時の画面差分取得の自動化
by
Shunsuke Maeda
Androidのテストを効率的にするために考えたこと
by
Ataru Osaka
iOSで利用できるデバイスファームのメリット・デメリットの紹介
by
Shunsuke Maeda
iOSアプリにおけるリリースフローとCI環境
by
Toshiyuki Hirata
バージョンアップ対応を軽減するサービス:マスティフ
by
Toshiyuki Hirata
Xcodeの管理を楽に - Jenkins編 -
by
Toshiyuki Hirata
Androidアプリ開発のテスト環境
by
Toshiyuki Hirata
マスティフ (for Xcode beta) - バージョンアップ対応を軽減するためのサービス
by
Toshiyuki Hirata
Xcode 7におけるUIテストとカバレジ計測 #yidev 第20回勉強会
by
Koji Hasegawa
バージョンアップの対応を軽減するためのサービスの構築
by
Toshiyuki Hirata
JaSST'16 Tokyo モバイルセッション
by
mirer
Jenkins Bootcamp Premiumのご紹介 in デブサミ2016冬
by
Masanori Satoh
Android e2e testing at mercari
by
Vishal Banthia
iOSにおけるコードレビューを一歩先へ進める
by
Shunsuke Maeda
スマホアプリディレクターが考えていること
by
Kazuaki KURIU
More from Toshiyuki Hirata
PDF
iOSにおける自動テストの並列化
by
Toshiyuki Hirata
PDF
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
PDF
UIテストの実行時間を短縮させる方法
by
Toshiyuki Hirata
PDF
レビューのコストを削減するための施策
by
Toshiyuki Hirata
PDF
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
PDF
我が家のLINEを中心とした情報共有
by
Toshiyuki Hirata
PDF
UIテスト(Espresso)の高速化をさらにすすめる
by
Toshiyuki Hirata
iOSにおける自動テストの並列化
by
Toshiyuki Hirata
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
UIテストの実行時間を短縮させる方法
by
Toshiyuki Hirata
レビューのコストを削減するための施策
by
Toshiyuki Hirata
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
我が家のLINEを中心とした情報共有
by
Toshiyuki Hirata
UIテスト(Espresso)の高速化をさらにすすめる
by
Toshiyuki Hirata
Recently uploaded
PDF
20260119_VIoTLT_vol22_kitazaki_v1___.pdf
by
Ayachika Kitazaki
PDF
TomokaEdakawa_職種と講義の関係推定に基づく履修支援システムの基礎検討_HCI2026
by
Matsushita Laboratory
PDF
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研)
by
Yuto Matsuda
PDF
maisugimoto_曖昧さを含む仕様書の改善を目的としたアノテーション支援ツールの検討_HCI2025.pdf
by
Matsushita Laboratory
PDF
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
PDF
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
20260119_VIoTLT_vol22_kitazaki_v1___.pdf
by
Ayachika Kitazaki
TomokaEdakawa_職種と講義の関係推定に基づく履修支援システムの基礎検討_HCI2026
by
Matsushita Laboratory
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研)
by
Yuto Matsuda
maisugimoto_曖昧さを含む仕様書の改善を目的としたアノテーション支援ツールの検討_HCI2025.pdf
by
Matsushita Laboratory
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf
by
akipii ogaoga
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S...
by
akipii ogaoga
fastlane snapshotの並列実行についてまとめてみた
1.
fastlane snapshotの 並列実行についてまとめてみた 2017/12/5(Tue) iOS Test
Night #6 - 1周年 - 平田敏之(@tarappo)
2.
自己紹介 平田 敏之@DeNA SWET (Software
Engineer in Test) 私がやっていること(一部) • クライアントアプリ周りのテスト戦略、自動テストの開発 • CI/CD環境整備 • テスト基盤環境の開発(マスティフ、ダルメシアン etc) • iOS / Android Test Night 主宰
3.
今日の流れ • snapshot • snapshotって? •
課題 • 従来の解決策 • テストの並列化 • 実験 • 実行環境 • 実行結果 • まとめ
4.
snapshot • 指定端末・指定言語のスクリーンショットを簡単に撮ることが出来る • App
Storeで利用する画像の用意 • ローカライズ検証のために利用 • 簡易的なUIテスト https://docs.fastlane.tools/actions/snapshot/
5.
snapshot 導入手順 • Step • fastlane
snapshot init • 以下のファイルが生成される • fastlane/Snapfile • fastlane/SnapshotHelper.swift • UIテストを用意 • SnapshotHelper.swiftを利用 • snapshot(“filename”)を呼び出す • Fastfile or Snapfileに設定を記載 • 実行したいdevices / languagesを指定 • snasphotの実行 • スクリーンショットが保存される • Xcode9から撮れるようになったが、今までは? DerivedDataPath/Logs/Test/Attachments/
6.
snapshot 課題 端末数・言語数が増えれば増えるほど実行時間が増加 0 350 700 1050 1400 1750 1台 2台 3台
4台 5台 6台 sec devices 3 languages
7.
snapshot (今までの)解決策(の例) • 実行環境の並列化 • 仮にlanguagesが3種類だったとする •
languages:[ ‘ja-JP’, ‘en-US’, ‘fr-FR’ ] • 以下のようにマシンを分割し実行すれば1/3程度になる • マシンA(ja-JP) / マシンB(en-US) / マシンC(fr-FR) 実行環境を用意するコスト 並列化できるように実装するコスト
8.
テストの並列化(1/2) • Xcode9 -
What’s New in Testing - • シミュレーターのテストの並列実行が出来るようになりました • xcodebuild -workspace yourworkspace.xcworkspace -scheme yourscheme -derivedDataPath ‘derivedDataPath‘ -destination 'platform=iOS Simulator,name=iPhone SE,OS=11.1' -destination 'platform=iOS Simulator,name=iPhone 6,OS=11.1' test • destinationが複数指定出来るようになりました • Xcode9の並列テストはどれだけ効果があるのか? by huin • https://speakerdeck.com/huin/xcode-9-falsebing-lie-tesutohadoredakexiao-guo-gaarufalseka
9.
テストの並列化(2/2) • snapshotでテストの並列実行をおこなえる対応が入った • https://github.com/fastlane/fastlane/pull/9570 •
2017/8/22 • fastlane 2.54.0 • 12/2現在 :2.68.0
10.
snapshot テストの並列化 • 利用方法 • 以下のパラメータをtrueにするだけ •
concurrent_simulators: true • 湧き上がる疑問 • どのように並列化されるの? • シミュレーターの起動数は?
11.
snapshot テストの並列化 • 起動数 • 実行するマシンに依存 •
(hwprefs_available? ? `hwprefs thread_count` : `sysctl -n hw.physicalcpu_max`).to_i • 上記コマンドで得られた値 - 1を起動数としている • テストの並列実行 • 例:devices: [ “iPhone 5s”, “iPhone SE”, “iPhone 6”, “iPhone 7” ] • devicesの数を元に並列化される • 起動数が4以上であれば、一度に上記端末を実行する • 起動数が3であれば、3つを実行した後に残りの1つを実行する
12.
実験 • 実行環境 • Mac
Pro (Late 2013) 3.5 GHz 6コア / 16GB • OS: 10.12.6 • Xcode 9.1 上記環境で以下の内容で実行 • devices:1〜6台まで • languages:3種類 • 試行回数:5回
13.
実験結果 端末数 実行時間(秒) 並列実行ON 実行時間(秒) 並列実行OFF 1台 250.2 251 2台
332.2 492 3台 416.2 725 4台 496.2 981.6 5台 558 1148.6 6台 764.6 1344.8
14.
実験結果 0 350 700 1050 1400 1750 1台 2台 3台
4台 5台 6台 sec ON OFF
15.
おわりに • snapshotでテストの並列化が「すごく簡単」にできるようになりました • snapshotを既に導入しているプロジェクト •
(devicesの値が2つ以上なら)concurrent_simulatorsをtrueにしましょう • fastlaneのsnapshotを未導入のプロジェクト • snapshot触ってみませんか? まずは最初の一歩を
Download