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
Better Way for Test Data Generation??
Search
shunsuke sato
July 30, 2019
Programming
1
1.9k
Better Way for Test Data Generation??
shunsuke sato
July 30, 2019
Tweet
Share
More Decks by shunsuke sato
See All by shunsuke sato
要約 "Add Live Text interaction to your app"
ushisantoasobu
1
730
ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について
ushisantoasobu
1
730
Summary of Diagnose unreliable code with test repetitions
ushisantoasobu
1
860
実践!「みてね」における自動生成活用例
ushisantoasobu
5
5.1k
5 Tips when test fails randomly
ushisantoasobu
2
2.8k
iOS/Androidのサブスクリプション実装における違いをざっと振り返る
ushisantoasobu
2
1.5k
24時間でMacアプリを作ってスベってきた話
ushisantoasobu
0
2k
Redirectable in App?
ushisantoasobu
2
870
iOSのClean Architecture テンプレ自動生成を支える技術 / generating CA's templates
ushisantoasobu
0
260
Other Decks in Programming
See All in Programming
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
180
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
360
try! Swift Tokyo 初参加報告LT
hinakko2
0
220
ゆるい個人開発のススメ
kuroppe1819
10
990
Goのエラースタックトレースの歴史と今後
sonatard
7
1.2k
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
260
Elm 0.19.0 Changes
bkuhlmann
0
490
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
200
Fragment Composition of GraphQL
quramy
4
730
Netty Chicago Java User Group 2024-04-17
sullis
0
170
Elm Form Validation
bkuhlmann
0
510
Git Rebase
bkuhlmann
11
1.6k
Featured
See All Featured
Being A Developer After 40
akosma
57
580k
The Language of Interfaces
destraynor
151
23k
The Pragmatic Product Professional
lauravandoore
25
5.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
227
16k
A Tale of Four Properties
chriscoyier
151
22k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Web development in the modern age
philhawksworth
202
10k
Building Applications with DynamoDB
mza
88
5.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Transcript
Better Way for Test Data Generation?? 2019/07/30 @Otemachi.swift #04
ࣗݾհ w ࠤ౻ढ़ี • @ushisantoasobu w גࣜձࣾϛΫγΟΈͯͶࣄۀ෦ w J04ϝΠϯʹɺ"OESPJE3BJMTগʑ w
͖ͳͷίʔώʔϑοταϧ
ΞδΣϯμ
ΞδΣϯμ w ίʔυδΣωϨʔγϣϯʹ͍ͭͯ w ʮςετσʔλʯͷδΣωϨʔγϣϯ w ͦͦԿΛղܾ͍ͨ͠ͷ͔ʁ w ίʔυδΣωϨʔγϣϯ͍ͯ͘͠ʢ࣮ʣ
ίʔυδΣωϨʔγϣϯʹ͍ͭͯ
ίʔυδΣωϨʔγϣϯʹ͍ͭͯ w J04ք۾ʹ͓͚Δ͜͜ͷಈ͖ʢॴײʣ w J04։ൃͷख़ංେԽ͢ΔΞϓϦ w ΞʔΩςΫνϟ w ςετ w
σβΠϯγεςϜ ͳͲ͕ϗοτͳτϐοΫʹ
w J04ք۾ʹ͓͚Δ͜͜ͷಈ͖ʢॴײʣ w J04։ൃͷख़ංେԽ͢ΔΞϓϦ w ΞʔΩςΫνϟ w ςετ w σβΠϯγεςϜ
ͳͲ͕ϗοτͳτϐοΫʹ ίʔυδΣωϨʔγϣϯʹ͍ͭͯ
w J04ք۾ʹ͓͚Δ͜͜ͷಈ͖ʢॴײʣ w J04։ൃͷख़ංେԽ͢ΔΞϓϦ w ΞʔΩςΫνϟ w ςετ w σβΠϯγεςϜ
ͳͲ͕ϗοτͳτϐοΫʹ ίʔυδΣωϨʔγϣϯʹ͍ͭͯ ϘΠϥʔϓϨʔτΛͨ͘͞Μॻ͔ͳ͍ͱ͍͚ͳ͍ ίʔυδΣωϨʔγϣϯͷॏཁੑ͕ߴ·͍ͬͯΔʁ
ίʔυδΣωϨʔγϣϯͷࣄྫ w 0UFNBDIJTXGUͰൃදͨ͠ͷ w ʮϓϨθϯςʔγϣϯʯͷςϯϓϨࣗಈੜ • https://speakerdeck.com/ushisantoasobu/ generating-cas-templates
ίʔυδΣωϨʔγϣϯͷࣄྫ
ίʔυδΣωϨʔγϣϯͷࣄྫ w 6*,POGͰௌ͍͖ͯͨɺ6CFSͷࣄྫ w ʢJ04ͷϓϩμΫτશͯͰʣສߦ w ͦͷ͏ͪͷίʔυδΣωϨʔγϣϯ͞Εͨͷ • https://www.youtube.com/watch? v=Tkg8721fObU&t=79s
ʮςετσʔλʯͷδΣωϨʔγϣϯ
ͦͦԿΛղܾ͍ͨ͠ͷ͔ʁ
ྫ͑ɺ͜ͷΑ͏ͳ&OUJUZ͕͋ͬͯɺɺɺ
ϢχοτςετͰͦͷҰཡΛฦ͢ϞοΫͷ3FQPTJUPSZΛॻ͘ͱ͜͏ͳΔ
ςετσʔλΛʹॻ͔ͳͯ͘ͳΒͳ͍ ʢ"TTFSU͢Δͱ͖ʹඞཁͳͷzJEz͚ͩͩͬͨΓ͢Δʣ
͜ͷΘ͠͞Λղܾ͍ͨ͠
• https://clean-swift.com/seed-data-unit-tests/ • https://github.com/Nonchalant/FactoryProvider • https://speakerdeck.com/tattn/tesutodetafalsezi- dong-sheng-cheng-fang-fa-falsebie-jie ଞͷํͷղܾํ๏ͷྫ
w Ͱ͖Δָ͚ͩʹॻ͚ΔΑ͏ʹ w ϓϩμΫγϣϯίʔυʹखΛ͚ͭͨ͘ͳ͍ w ϚʔΧʔ༻ͷϓϩτίϧ͢ΒͰ͖Ε͚ͭͨ͘ͳ͍ w ֶशίετߴ͘ͳ͍ͷ͕·͍͠ w ͘ΘΕ͍ͯΔϥΠϒϥϦҎ֎ͷͷ͍ͨ͘ͳ͍
ࣗͳΓʹߟ͑ͨɺཧͷͷ
None
None
ͯ͢ͷϓϩύςΟʹ ͦΕΆ͍σϑΥϧτҾΛͭ ΠχγϟϥΠβΛࣗಈੜͰ͖Ε࠷ߴͰʁ
͖͞΄Ͳͷ&OUJUZʹରͯ͠ɺɺɺ
͜ͷΑ͏ͳϝιουΛςετλʔήοτʹͷΈੜͯ͋͛͠Δ
͖͞΄Ͳͷͩͬͨ6OJU5FTUͷίʔυ͕ɺɺɺ
͜ͷΑ͏ʹεοΩϦͱॻ͚Δ
None
ίʔυδΣωϨʔγϣϯ͍ͯ͘͠ʢ࣮ʣ
4PVSDFSZ 4UFODJM
͜Μͳײ͡Ͱॻ͍ͯΈ·ͨ͠ʢTUFODJMϑΝΠϧʣ
ҎԼʹαϯϓϧϓϩδΣΫτ͋Γ·͢ https://github.com/ushisantoasobu/ DemoTestDataGeneration/pull/1/files
ߟ͑Δ͜ͱʮͦΕͧΕͷܕͷσϑΥϧτΛͲ͏͢Δ͔ʯͷΈ
0QUJPOBMͷͱ͖OJM
ϓϦϛςΟϒܕͷͱ͖ͦΕͧΕͷܕͷσϑΥϧτΛઃఆͯ͋͛͠Δ ʢz*OUzͳΒ l4USJOHzͳΒۭจࣈɺͳͲʣ
&OVNͷͱ͖࠷ॳͷ
Ͳ͏͍ͯ͠͠ͱ͖ʢࠓճͷྫͰ͍͏ͱ"TTPDJBUFE7BMVFΛͭ&OVNͷ ͷͱ͖ʣʮϕλॻ͖ʯͰಀΕΔ͜ͱͰ͖Δ
ͦΕҎ֎ͷͱ͖ଞͷ&OUJUZͱͯ͠࠶ؼతʹѻ͏
5*14ͱͯ͠ɺ4PVSDFSZ4UFODJMͱʹ υΩϡϝϯτ͕͔ͬ͠Γඋ͍ͯ͠ΔΘ͚Ͱͳ͍ͷͰ ίʔυΈΔͱޮతͩͬͨ ʢͬͱ͍͍σόοάͷํ͋Δͷ͔͠Εͳ͍͕ʣ
w Ͱ͖Δָ͚ͩʹॻ͚ΔΑ͏ʹ✅ w ϓϩμΫγϣϯίʔυʹखΛ͚ͭͨ͘ͳ͍✅ w ϚʔΧʔ༻ͷϓϩτίϧ͢ΒͰ͖Ε͚ͭͨ͘ͳ͍ w ֶशίετߴ͘ͳ͍ͷ͕·͍͠✅ w ͘ΘΕ͍ͯΔϥΠϒϥϦҎ֎ͷͷ͍ͨ͘ͳ͍✅
ࣗͳΓʹߟ͑ͨɺཧͷͷʢ֬ೝʣ
Thanks for Listening ☕