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
What's New in Testing!!!
Search
Shingo Tamaki
July 26, 2017
Technology
2.3k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
What's New in Testing!!!
WWDC2017のほぼ同名のセッションの内容について簡単にまとめました。
Shingo Tamaki
July 26, 2017
More Decks by Shingo Tamaki
See All by Shingo Tamaki
Use Gemini CLI from Claude Code as part of Sub Agent
tamaki
0
350
Let's make an Immersive Video with APMP
tamaki
0
83
Firebase Studioで始めるモバイルアプリ開発入門
tamaki
0
77
Introduction to Claude Code Action
tamaki
0
830
AIエージェントを使ったiOSアプリ開発を試してみた
tamaki
0
230
沖縄モバイルアプリ開発勉強会#1
tamaki
0
190
iOSアプリ開発を始めよう
tamaki
0
270
詳解xcresult.pdf
tamaki
0
490
メルペイでのリグレッションテスト自動化推進のこれまでとこれから
tamaki
0
870
Other Decks in Technology
See All in Technology
ソフトウェアサプライチェーンの構造的リスクとコンテナ環境の保護
kyohmizu
5
720
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
230
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
130
Kiro入門|仕様駆動開発で変わるAI時代の開発スタイル
cmkudo
0
180
Apache Icebergインフラストラクチャ:ストレージ・カタログ・エンジンの選択肢とClouderaプラットフォームでの実装
tsugiyama
0
120
도구에서 동료까지: 10년차 AI 스타트업의 AI 적응기
inureyes
PRO
0
240
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
680
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
180
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
250
関東Kaggler会発表資料
takoi
1
260
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
5k
Genie Codeハンズオン応用編
taka_aki
0
130
Featured
See All Featured
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
640
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
170
So, you think you're a good person
axbom
PRO
2
2.1k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
780
GitHub's CSS Performance
jonrohan
1033
470k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
3
450
Building an army of robots
kneath
306
46k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
The untapped power of vector embeddings
frankvandijk
2
1.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
What's New in Testing!!!
ࣗݾհ
ࣗݾհ ۄ৴ޛ iOS Engineer! ͖ͳframeworkHomeKitͱXCTestͰ͢ झຯ" ిࢠ࡞⚡ ےτϨ$ ΨδΣοτ%
Parallel Testing Localization Block-based test teardown Multi-app Testing FirstMatch API
Activities Attachments Async Testing (Xcode8.3)
Parallel Testing https://developer.apple.com/videos/play/wwdc2017/102/
Localization ςετ࣌ͷLanguage/Regionࢦఆ͕ՄೳʹͳΓ·ͨ͠ɻ xcodebuildͰ-testLanguage,-testRegionͰࢦఆՄೳ
Block-based test teardown
Multi-app Testing
Multi-app Testing
FirstMatch API
FirstMatch API
Activities
͜Ε·Ͱͷςετ
͜Ε·Ͱͷςετ
͜Ε͔Βͷςετ
࣮ߦϩά͔Βݟͨҧ͍
Attachment
Screenshots
Screenshots
Attachment Lifetime Policies
Async Testing (Xcode 8.3)
XCTWaiter • XCTWaiterͱͯ͠ΣΠτॲཧʹؔ͢Δ෦͕XCTestCase͔ Β͠·ͨ͠ɻ • ରͱͳΔexpectationΛ໌ࣔతʹෳͰ͖ΔΑ͏ʹͳΓ·͠ ͨɻ • XCTWaiterDelegate •
XCTWaiter.Result
XCTWaiter
XCTWaiter
XCTWaiter Explicitly expectation
XCTWaiter.Result XCWaiter.Result͕ఆٛ͞Εɺ࣮ߦ݁Ռͱͯ͠ҎԼͷΑ͏ͳͷ ͕ఆٛ͞Ε͍ͯ·͢ɻ • completed • timedOut • incorrectOrder •
invertedFulfillment • interrupted
XCTWaiterDelegate • nestedWaiter(_:wasInterruptedByTimedOutWaiter:) • waiter(_:didTimeoutWithUnfulfilledExpectations:) • waiter(_:didFulfillInvertedExpectation:) • waiter(_:fulfillmentDidViolateOrderingConstraintsFor:requir edExpectation:)
XCTTestExpectation • expectedFulfillmentCount • isInverted • enforceOrder
isInverted
expectedFulfillmentCount
enforceOrder
XCTTestExpectation • ৽͍͠Expectation͕૿͑·ͨ͠ɻ • XCTKVOExpectation • XCTNSNotificationExpectation • XCTNSPredicateExpectation
https:// developer.apple.com /videos/play/ wwdc2017/409/
Ҏ্