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
ぼっち開発でもテストがしたい! ~導入編~
Search
Yutaro Muta
January 19, 2017
Technology
0
2.6k
ぼっち開発でもテストがしたい! ~導入編~
iOS Test Night #2 (
https://testnight.connpass.com/event/45717/
) で話しました
Yutaro Muta
January 19, 2017
Tweet
Share
More Decks by Yutaro Muta
See All by Yutaro Muta
Apple Vision Pro購入RTA 1泊3日弾丸ハワイツアー / RTA: Purchase Apple Vision Pro in Hawaii
yutailang0119
0
1.3k
個人開発のたのしみ / Enjoying personal development
yutailang0119
0
830
バックポートして学ぶ新APIの仕組み
yutailang0119
0
2.4k
Backport AsyncImage
yutailang0119
0
630
xcrun Essentials
yutailang0119
6
1.2k
Let's Coding SwiftUI on iPad!
yutailang0119
1
470
Property Wrapperで遊ぼう / Play with Property Wrapper
yutailang0119
2
290
Back of First Screen AB test of Hatena Bookmark iOS app with Firebase AB Testing
yutailang0119
0
280
Lab of WWDC19
yutailang0119
1
490
Other Decks in Technology
See All in Technology
Qiita埋め込み用スライド
naoki_0531
0
5.1k
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
260
バクラクのドキュメント解析技術と実データにおける課題 / layerx-ccc-winter-2024
shimacos
2
1.1k
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
180
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
Amazon VPC Lattice 最新アップデート紹介 - PrivateLink も似たようなアップデートあったけど違いとは
bigmuramura
0
190
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
230
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
160
NW-JAWS #14 re:Invent 2024(予選落ち含)で 発表された推しアップデートについて
nagisa53
0
270
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
1
300
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
310
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
The Cult of Friendly URLs
andyhume
78
6.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
A better future with KSS
kneath
238
17k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
98
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
We Have a Design System, Now What?
morganepeng
51
7.3k
Designing for humans not robots
tammielis
250
25k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Transcript
΅ͬͪ։ൃͰςετΛ͍ͨ͠! ~ಋೖฤ~ 2017/01/19_iOS Test Night #2 Yutaro Muta (@yutailang0119)
Who am I ? • ໂా ༟ଠ (@yutailang0119) • iOS
App Developer • ΞϥΠυΞʔΩςΫπגࣜձࣾ • PyCon JP 2016, 2017 ελοϑ • builderscon 2017 ελοϑ (εϙϯαʔืूதʂ) • ࠷ۙPlayground͕͖
None
ίʔυग़͖ͯ·ͤΜ
ϘΫͷςετϨϕϧ • JUnitͱ͔शͬͨ • Objective-CͷࠒʹXCTestΛॻ͍ͯͨ • ࠓͷϓϩδΣΫτʹςετίʔυ͕ͳ͍ • XXXTests/XXXTests.swift •
XXXUITests/XXXUITests.swift ͕͋Δ͚ͩ
“͋͘·Ͱ” Πϝʔδ
@testable import ͕Ͱ͖ͳ͍… (ͳΜͯ͜ͱ)
Goal • “΅ͬͪͰ” ςετΛॻ͘ϞνϕʔγϣϯΛ ্͛Δ • ʑͷෛ୲ΛݮΒ͢
Agenda • ςετΛ͡ΊΔͨΊͷΠϩϋ • ͜ͷςεςΟϯάϑϨʔϜϫʔΫ͕͜͜ϋϚΓͲ͜Ζ • ςεςΟϯάϑϨʔϜϫʔΫΛ͜͏͍͚͍ͬͯͯΔ • ͜͏ͬͯͯ͠ςετ͍ͯ͠Δ •
ΦϨ͕ߟ͑ΔiOSΞϓϦʹ͓͚ΔςελϏϦςΟͷߴ͍ઃܭ • ࠓɺ͜ͷCI͕͍ • ฐࣾͷCI/CDڥ͜Μͳײ͡ʹ͍ͯ͠Δ iOS Test Night connpassϖʔδ ΑΓ
Agenda • ςετΛ͡ΊΔͨΊͷΠϩϋɹతͳԿ͔ • ͜ͷςεςΟϯάϑϨʔϜϫʔΫ͕͜͜ϋϚΓͲ͜Ζ • ςεςΟϯάϑϨʔϜϫʔΫΛ͜͏͍͚͍ͬͯͯΔ • ͜͏ͬͯͯ͠ςετ͍ͯ͠Δ •
ΦϨ͕ߟ͑ΔiOSΞϓϦʹ͓͚ΔςελϏϦςΟͷߴ͍ઃܭ • ࠓɺ͜ͷCI͕͍ • ฐࣾͷCI/CDڥ͜Μͳײ͡ʹ͍ͯ͠Δ iOS Test Night connpassϖʔδ ΑΓ
ࣾͰͷΓऔΓ
ςετΛॻ͖·͠ΐ͏ɻ ॻ͍ͯͨΓલͰ͢ΑͶʁ ςετॻ͘Ί͏
ςετΛॻ͖·͠ΐ͏ɻ ॻ͍ͯͨΓલͰ͢ΑͶʁ ςετॻ͘Ί͏ Web (PHPJava) ͷίϯςΩετͰޠΒΕ͍ͯΔ (߹͕ଟ͍)
ςετΛॻ͖·͠ΐ͏ɻ ॻ͍ͯͨΓલͰ͢ΑͶʁ ςετॻ͘Ί͏ ࠓͷϓϩδΣΫʹXCTestͷڥ͢ΒͰ͖͍ͯͳ͔ͬͨঢ়ଶ
Issues • ։ൃεϐʔυ͕࠷༏ઌ • ͕औΕͳ͍ • ϊϋ͕ͳ͍ • ࣮࣭ࣗ1ਓ •
ࣗಈςετͷڥ͕ͳ͍ • पғͱͷԹࠩ
ςετΛॻ͖࢝ΊΔ·Ͱͷ (ڥత && ৺ཧత) ϋʔυϧ͕ߴ͍
ͦͦͳΜͰςετΛ ॻ͘Μ͚ͩͬʁ
୯ମςετͷಛ • ૣظʹΛൃݟ͢Δ • มߋΛ༰қʹ͢Δ • ౷߹ͷ؆ૉԽ • υΩϡϝϯτ •
ઃܭ Wikipedia <https://ja.wikipedia.org/wiki/୯ମςετ> ΑΓ
ݸਓతʹϝϦοτʹײ͡Δ͜ͱ • ࣭ΛΑ͘͢ΔͨΊͷखॿ͚ʹͳΔ • ෛ୲ΛܰݮͰ͖Δ • ࣮࣌ɺมߋ࣌ͷෛ୲ • ৺ཧతෛ୲
ςετΛॻ͖࢝ΊΔ·Ͱͷ (ڥత && ৺ཧత) ϋʔυϧ͕ߴ͍ ෛ୲ʹͳͬͯΔ
ͱ͍͑… • ࢝ΊΔ͜ͱʹΑΔϝϦοτେ͖͍ͣ • ࠷ۙςετॻ͍ͯͳ͍ํ͕ϚΠϊϦςΟͳؾ ͕…
iOS Test Night #1 Ͱ ͍Ζ͍Ζฉ͍͖ͯͨ͠ɺ ࢝ΊΔͳΒࠓ•̀ . ̫•́✧
΅ͬͪ։ൃ͚ͩͲɺ ςετΛॻ͜͏
Ͳ͔͜ΒςετΛॻ͔͘ʁ • ·ͣϢχοτςετ͔Β 1. جຊܕͷExtensions 2. Model 3. ͦͷޙɺControllerͱ͔ •
UIςετͷݟ͍ͩ͘͞
Ͳ͔͜ΒςετΛॻ͔͘ʁ • ·ͣϢχοτςετ͔Β 1. جຊܕͷExtension <- ͱΓ͋͑ͣ͜͜Ͱ͖ͨ 2. Model 3.
ͦͷޙɺControllerͱ͔ • UIςετͷݟ͍ͩ͘͞
جຊܕͷExtensionͷςετ • Ͳ͜ͰΘΕΔॲཧͳͷ͔Λݟ͢ • ࣮࣌Ͱߟྀ͍ͯͨ͠ͷ͔ෆ໌ྎͳ͜ͱ͕ ग़ͯདྷΔ • Stringૢ࡞ͷ࣌ʹɺֆจࣈͷߟྀ͚ͨͬ͠ʁ • ࣦഊ͖͢ύλʔϯʁ
-> ࣮ࣗମ͕ؒҧ͍ͬͯΔͷͰʁ • UIKitܥ·ͩ
ͦͷଞͬͨ͜ͱ
fastlane • Ͳ͜ͷษڧձͰʮ͍͍ΑʂʯͱݴΘΕΔͷͰ • CIಋೖͷੴʹ • (ࠓͷͱ͜Ζ) ςετΑΓcrashlytics, deliver ͷԸܙ͕େ͖͍
• ਓతϛεΛݮΒͤΔ (ͣ)
• ͱΓ͋͑ͣXCTestͷڥͰ͖ͨ • গ͠Ͱςετ͕͋Δͱɺؾ࣋ͪతʹܧଓ͠ ͍͢ • ࣮Λݟ͍͍͢ػձʹͳͬͨ • ԿΑΓ৺ཧతෆ͕҆ܰݮ͞ΕΔʂʂʂʂ ·ͱΊ
࣍ճ ΅ͬͪ։ൃͰςετΛ͍ͨ͠! ~ӡ༻ฤ~
࣍ճ ΅ͬͪ։ൃͰςετΛ͍ͨ͠! ~ӡ༻ฤ~ Δ͔ʁ