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
2.8k
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
1.1k
ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について
ushisantoasobu
1
800
Summary of Diagnose unreliable code with test repetitions
ushisantoasobu
1
1k
実践!「みてね」における自動生成活用例
ushisantoasobu
5
6.4k
5 Tips when test fails randomly
ushisantoasobu
2
3.7k
iOS/Androidのサブスクリプション実装における違いをざっと振り返る
ushisantoasobu
2
1.7k
24時間でMacアプリを作ってスベってきた話
ushisantoasobu
0
2.2k
Redirectable in App?
ushisantoasobu
2
950
iOSのClean Architecture テンプレ自動生成を支える技術 / generating CA's templates
ushisantoasobu
0
280
Other Decks in Programming
See All in Programming
rage against annotate_predecessor
junk0612
0
170
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
160
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
740
旅行プランAIエージェント開発の裏側
ippo012
2
900
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
220
1から理解するWeb Push
dora1998
7
1.9k
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
私の後悔をAWS DMSで解決した話
hiramax
4
210
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
120
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
300
Swift Updates - Learn Languages 2025
koher
2
470
Cache Me If You Can
ryunen344
2
700
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Making Projects Easy
brettharned
117
6.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Speed Design
sergeychernyshev
32
1.1k
KATA
mclloyd
32
14k
Navigating Team Friction
lara
189
15k
Practical Orchestrator
shlominoach
190
11k
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 ☕