Slide 1

Slide 1 text

Better Way for Test Data Generation?? 2019/07/30 @Otemachi.swift #04

Slide 2

Slide 2 text

ࣗݾ঺հ w ࠤ౻ढ़ี • @ushisantoasobu w גࣜձࣾϛΫγΟΈͯͶࣄۀ෦ w J04ϝΠϯʹɺ"OESPJE3BJMT΋গʑ w ޷͖ͳ΋ͷίʔώʔϑοταϧ

Slide 3

Slide 3 text

ΞδΣϯμ

Slide 4

Slide 4 text

ΞδΣϯμ w ίʔυδΣωϨʔγϣϯʹ͍ͭͯ w ʮςετσʔλʯͷδΣωϨʔγϣϯ w ͦ΋ͦ΋ԿΛղܾ͍ͨ͠ͷ͔ʁ w ίʔυδΣωϨʔγϣϯ͍ͯ͘͠ʢ࣮૷ʣ

Slide 5

Slide 5 text

ίʔυδΣωϨʔγϣϯʹ͍ͭͯ

Slide 6

Slide 6 text

ίʔυδΣωϨʔγϣϯʹ͍ͭͯ w J04ք۾ʹ͓͚Δ͜͜਺೥ͷಈ͖ʢॴײʣ w J04։ൃͷ੒ख़ංେԽ͢ΔΞϓϦ w ΞʔΩςΫνϟ w ςετ w σβΠϯγεςϜ ͳͲ͕ϗοτͳτϐοΫʹ

Slide 7

Slide 7 text

w J04ք۾ʹ͓͚Δ͜͜਺೥ͷಈ͖ʢॴײʣ w J04։ൃͷ੒ख़ංେԽ͢ΔΞϓϦ w ΞʔΩςΫνϟ w ςετ w σβΠϯγεςϜ ͳͲ͕ϗοτͳτϐοΫʹ ίʔυδΣωϨʔγϣϯʹ͍ͭͯ

Slide 8

Slide 8 text

w J04ք۾ʹ͓͚Δ͜͜਺೥ͷಈ͖ʢॴײʣ w J04։ൃͷ੒ख़ංେԽ͢ΔΞϓϦ w ΞʔΩςΫνϟ w ςετ w σβΠϯγεςϜ ͳͲ͕ϗοτͳτϐοΫʹ ίʔυδΣωϨʔγϣϯʹ͍ͭͯ ϘΠϥʔϓϨʔτΛͨ͘͞Μॻ͔ͳ͍ͱ͍͚ͳ͍ ίʔυδΣωϨʔγϣϯͷॏཁੑ͕ߴ·͍ͬͯΔʁ

Slide 9

Slide 9 text

ίʔυδΣωϨʔγϣϯͷࣄྫ w 0UFNBDIJTXGUͰൃදͨ͠΋ͷ w ʮϓϨθϯςʔγϣϯ૚ʯͷςϯϓϨࣗಈੜ੒ • https://speakerdeck.com/ushisantoasobu/ generating-cas-templates

Slide 10

Slide 10 text

ίʔυδΣωϨʔγϣϯͷࣄྫ

Slide 11

Slide 11 text

ίʔυδΣωϨʔγϣϯͷࣄྫ w 6*,POGͰௌ͍͖ͯͨɺ6CFSͷࣄྫ w ʢJ04ͷϓϩμΫτશͯͰʣສߦ w ͦͷ͏ͪͷ൒෼͸ίʔυδΣωϨʔγϣϯ͞Εͨ΋ͷ • https://www.youtube.com/watch? v=Tkg8721fObU&t=79s

Slide 12

Slide 12 text

ʮςετσʔλʯͷδΣωϨʔγϣϯ

Slide 13

Slide 13 text

ͦ΋ͦ΋ԿΛղܾ͍ͨ͠ͷ͔ʁ

Slide 14

Slide 14 text

ྫ͑͹ɺ͜ͷΑ͏ͳ&OUJUZ͕͋ͬͯɺɺɺ

Slide 15

Slide 15 text

ϢχοτςετͰͦͷҰཡΛฦ͢ϞοΫͷ3FQPTJUPSZΛॻ͘ͱ͜͏ͳΔ

Slide 16

Slide 16 text

ςετσʔλΛ৑௕ʹॻ͔ͳͯ͘͸ͳΒͳ͍
 ʢ"TTFSU͢Δͱ͖ʹඞཁͳͷ͸zJEz͚ͩͩͬͨΓ͢Δʣ

Slide 17

Slide 17 text

͜ͷ൥Θ͠͞Λղܾ͍ͨ͠

Slide 18

Slide 18 text

• 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 ଞͷํͷղܾํ๏ͷྫ

Slide 19

Slide 19 text

w Ͱ͖Δָ͚ͩʹॻ͚ΔΑ͏ʹ w ϓϩμΫγϣϯίʔυʹ͸खΛ͚ͭͨ͘ͳ͍ w ϚʔΧʔ༻ͷϓϩτίϧ͢ΒͰ͖Ε͹͚ͭͨ͘ͳ͍ w ֶशίετ͸ߴ͘ͳ͍ͷ͕๬·͍͠ w ޿͘࢖ΘΕ͍ͯΔϥΠϒϥϦҎ֎ͷ΋ͷ͸࢖͍ͨ͘ͳ͍ ࣗ෼ͳΓʹߟ͑ͨɺཧ૝ͷ΋ͷ

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

͢΂ͯͷϓϩύςΟʹ ͦΕΆ͍σϑΥϧτҾ਺Λ΋ͭ ΠχγϟϥΠβΛࣗಈੜ੒Ͱ͖Ε͹࠷ߴͰ͸ʁ

Slide 23

Slide 23 text

͖͞΄Ͳͷ&OUJUZʹରͯ͠ɺɺɺ

Slide 24

Slide 24 text

͜ͷΑ͏ͳϝιουΛςετλʔήοτʹͷΈੜ΍ͯ͋͛͠Δ

Slide 25

Slide 25 text

͖͞΄Ͳͷ৑௕ͩͬͨ6OJU5FTUͷίʔυ͕ɺɺɺ

Slide 26

Slide 26 text

͜ͷΑ͏ʹεοΩϦͱॻ͚Δ

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

ίʔυδΣωϨʔγϣϯ͍ͯ͘͠ʢ࣮૷ʣ

Slide 29

Slide 29 text

4PVSDFSZ 4UFODJM

Slide 30

Slide 30 text

͜Μͳײ͡Ͱॻ͍ͯΈ·ͨ͠ʢTUFODJMϑΝΠϧʣ

Slide 31

Slide 31 text

ҎԼʹαϯϓϧϓϩδΣΫτ͋Γ·͢ https://github.com/ushisantoasobu/ DemoTestDataGeneration/pull/1/files

Slide 32

Slide 32 text

ߟ͑Δ͜ͱ͸ʮͦΕͧΕͷܕͷσϑΥϧτ஋ΛͲ͏͢Δ͔ʯͷΈ

Slide 33

Slide 33 text

0QUJPOBMͷͱ͖OJM

Slide 34

Slide 34 text

ϓϦϛςΟϒܕͷͱ͖ͦΕͧΕͷܕͷσϑΥϧτ஋Λઃఆͯ͋͛͠Δ ʢz*OUzͳΒ l4USJOHzͳΒۭจࣈɺͳͲʣ

Slide 35

Slide 35 text

&OVNͷͱ͖࠷ॳͷ஋

Slide 36

Slide 36 text

Ͳ͏ͯ͠΋೉͍͠ͱ͖ʢࠓճͷྫͰ͍͏ͱ"TTPDJBUFE7BMVFΛ΋ͭ&OVNͷ ஋ͷͱ͖ʣʮϕλॻ͖ʯͰಀΕΔ͜ͱ΋Ͱ͖Δ

Slide 37

Slide 37 text

ͦΕҎ֎ͷͱ͖ଞͷ&OUJUZͱͯ͠࠶ؼతʹѻ͏

Slide 38

Slide 38 text

5*14ͱͯ͠͸ɺ4PVSDFSZ4UFODJMͱ΋ʹ υΩϡϝϯτ͕͔ͬ͠Γ੔උ͍ͯ͠ΔΘ͚Ͱ͸ͳ͍ͷͰ ίʔυ௚઀ΈΔͱޮ཰తͩͬͨ ʢ΋ͬͱ͍͍σόοάͷ࢓ํ͋Δͷ͔΋͠Εͳ͍͕ʣ

Slide 39

Slide 39 text

w Ͱ͖Δָ͚ͩʹॻ͚ΔΑ͏ʹ✅ w ϓϩμΫγϣϯίʔυʹ͸खΛ͚ͭͨ͘ͳ͍✅ w ϚʔΧʔ༻ͷϓϩτίϧ͢ΒͰ͖Ε͹͚ͭͨ͘ͳ͍ w ֶशίετ͸ߴ͘ͳ͍ͷ͕๬·͍͠✅ w ޿͘࢖ΘΕ͍ͯΔϥΠϒϥϦҎ֎ͷ΋ͷ͸࢖͍ͨ͘ͳ͍✅ ࣗ෼ͳΓʹߟ͑ͨɺཧ૝ͷ΋ͷʢ֬ೝʣ

Slide 40

Slide 40 text

Thanks for Listening ☕