Slide 1

Slide 1 text

ΞϓϦͷϢχοτςετʹͭ ͍ͯॳา͔Βߟ͑ͯΈΔ 2017/10/02 Զίϯ Vol.1 / Day.1 େੴ ߂Ұ࿠ɹ(@mego_, Koishi) 1 Koichiro Oishi, 2017/10/02

Slide 2

Slide 2 text

ࣗݾ঺հ • େੴ ߂Ұ࿠ • iOSΞϓϦΤϯδχΞ • גࣜձࣾϚφϘ →9݄ʹSIer͔Βస৬͠·͠ ͨʂ 2 Koichiro Oishi, 2017/10/02

Slide 3

Slide 3 text

ຊ೔ͷ͓୊ • ΞϓϦͷϢχοτςετΛͳΜͱͳ͘ॻ͍ͯΔ • Xcodeඪ४ͷXCTestΛ࢖༻ • ओʹϞσϧ෦෼ͷΈ • ௨৴ॲཧ͸։ൃαʔόͱ௨৴͢Δςετ • UIςετ͸ϊʔλον 3 Koichiro Oishi, 2017/10/02

Slide 4

Slide 4 text

4 Koichiro Oishi, 2017/10/02

Slide 5

Slide 5 text

৭ʑؾʹͳΔ͜ͱ΋͋ͬͯɺ ৄ͍͠ਓʹฉ͍ͯΈ͍ͨ 5 Koichiro Oishi, 2017/10/02

Slide 6

Slide 6 text

ͱ͍͏͜ͱͰɺςετʹৄ͠ ͍ਓʹฉ͍ͯߟ͑ͯΈ·ͨ͠ (લ৬ͷݱ৔Ͱͷ࿩) 6 Koichiro Oishi, 2017/10/02

Slide 7

Slide 7 text

ςετʹৄ͍͠ํͱ͍͑͹͋ ͷํͰ͢Ͷʂ 7 Koichiro Oishi, 2017/10/02

Slide 8

Slide 8 text

͜Μͳ͜ͱΛฉ͖·ͨ͠ • Modelͷςετ͸͜Μͳ෩ʹॻ͍ͯΔ͚Ͳʁ • ௨৴෦෼͸։ൃαʔόͱ௨৴ͯ͠Δ͚ͲMockΛ ࢖ͬͨํ͕ྑ͍ʁ • Viewͷςετ͸Ͳ͏͢Ε͹ྑ͍ʁ • ΧόϨοδʹ͍ͭͯ 8 Koichiro Oishi, 2017/10/02

Slide 9

Slide 9 text

Modelͷςετ͍·͜Μͳ෩ ʹॻ͍ͯ·͚͢ͲͲ͏Ͱ͢ ͔ʁ 9 Koichiro Oishi, 2017/10/02

Slide 10

Slide 10 text

͜Μͳ෩ʹॻ͍͍ͯ·ͨ͠ɻ 10 Koichiro Oishi, 2017/10/02

Slide 11

Slide 11 text

→ϝιου໊͸ྑ͍ ঢ়ଶͱظ଴͞ΕΔ݁Ռ͕ϝιου໊ʹॻ͔Ε͍ͯΔ 11 Koichiro Oishi, 2017/10/02

Slide 12

Slide 12 text

→ಉ͡ΫϥεͷςετͰ΋ά ϧʔϓԽͨ͠ΒΑ͍ • JUnitͰ͍͏Enclosed • RspecͰ͍͏describe →XCTestͩͱͰ͖ͳ͍ →QuickͩͱͰ͖ΔͬΆ͍? 12 Koichiro Oishi, 2017/10/02

Slide 13

Slide 13 text

→ΫϥεͱςετΫϥε͸1 ରଟͰΑ͍ 13 Koichiro Oishi, 2017/10/02

Slide 14

Slide 14 text

௨৴෦෼͸։ൃαʔόͱ௨৴ ͯ͠Δ͚ͲMockΛ࢖ͬͨํ ͕ྑ͍ʁ 14 Koichiro Oishi, 2017/10/02

Slide 15

Slide 15 text

→ඞͣ͠΋࢖Θͳͯ͘ྑ͍ • MockΛ࢖͏ͱɺMock͕ਖ਼͍͠࢓༷Ͱ͋Δ͜ͱͷ ୲อ͕ඞཁʹͳΔ • ςετʹ࢖͑Δ։ൃαʔό͕͋Ε͹ͦͪΒͷํ͕ ௿ίετ • ؀ڥతʹ௨৴Ͱ͖ͳ͍ɺ͕͔͔࣌ؒΔͱ͍ͬͨ৔ ߹͸MockΛݕ౼͢Δ 15 Koichiro Oishi, 2017/10/02

Slide 16

Slide 16 text

→Ͱ΋࣮ࡍʹ௨৴͢Δςετ͸ͨ·ʹ ࣦഊ͢Δ͜ͱ͕͋Δ • ඞͣ੒ޭ͢Δςετͱͨ·ʹࣦഊͯ͠͠·͏ςε τΛ෼ྨ →XcodeͳΒςετίʔυͷλʔήοτΛผʹ͢ ΔͳͲ • ྫ͑͹CIͰࣗಈςετ͢ΔͳΒࣦഊ͢Δςετ͸ 3ճ࿈ଓͨ͠Βࣦഊͱ൑ఆ͢ΔͳͲ 16 Koichiro Oishi, 2017/10/02

Slide 17

Slide 17 text

Viewͷςετ͸΍Βͳ͍ͱͩ ΊͰ͔͢ʁ 17 Koichiro Oishi, 2017/10/02

Slide 18

Slide 18 text

→ViewͷςετΑΓ͸E2Eς ετΛ΍ͬͨํ͕ྑ͍ • View͸σβΠϯ΋ঢ়ଶ͕มΘΔ͔ΒɺView୯ମͷ ςετͱ͍͏ΑΓ͸εϞʔΫςετ΍E2Eςετ Λ΍ͬͨํ͕ྑ͍ → AppiumͳͲ • E2EςετΛߦ͏͜ͱͰਖ਼ৗܥͷςετ͸ࣗಈԽ Ͱ͖Δ → ྫ֎ܥͷෳࡶͳςετ͸ਓ͕ؒ΍Δඞཁ͕͋Δ 18 Koichiro Oishi, 2017/10/02

Slide 19

Slide 19 text

ΧόϨοδʹ͍ͭͯ 19 Koichiro Oishi, 2017/10/02

Slide 20

Slide 20 text

→໨ࢦ͢΂͖ΧόϨοδ • ·ͣ͸ϞσϧΛର৅ʹ80ʙ90%Λ໨ࢦͤ͹ྑ͍ →100%Λ໨ࢦ͢ͷ͸ͭΒΈ͕૿͢৔߹ͷ΋͋Δ ͷͰඞͣ͠΋໨ࢦ͞ͳͯ͘΋Α͍ 20 Koichiro Oishi, 2017/10/02

Slide 21

Slide 21 text

→ࠓޙ΋ΧόϨοδΛҙࣝ͢ Δ͜ͱ • ΧόϨοδ͕ҡ࣋͞Ε͍ͯΔ → ಉ͡ൺ཰Ͱςετ͕ॻ͔Ε͍ͯΔ ! • ΧόϨοδ͕Լ͕͍ͬͯΔ → ςετ͕ॻ͔Ε͍ͯͳ͍ " 21 Koichiro Oishi, 2017/10/02

Slide 22

Slide 22 text

XCTestͳΒXcode্Ͱ֬ೝͰ ͖·͢Ͷʂ 22 Koichiro Oishi, 2017/10/02

Slide 23

Slide 23 text

͝੩ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ 23 Koichiro Oishi, 2017/10/02