Slide 1

Slide 1 text

໦ ू·Ε4XJGU޷͖ʂ4XJGUѪ޷ձεϐϯΦϑ88%$ηογϣϯཁ໿ձ!ΦϯϥΠϯ !UIF@VIPPJ 9$54LJQZPVSUFTUTͷ ཁ໿

Slide 2

Slide 2 text

΢ϗʔΠ J04ΞϓϦΤϯδχΞ w ࠓճݶఆͰ4XJGUѪ޷ձͷ ӡӦʹࢀը͍ͯ͠Δ

Slide 3

Slide 3 text

ࠓ೔఻͍͑ͨ͜ͱ 9DPEFͰୈͷςετ݁Ռ͕௥Ճ͞Εͨ ੒ޭ ࣦഊ εΩοϓ

Slide 4

Slide 4 text

ಛఆͷ৚݅ͷΈͰςετΛ ࣮ߦ͍ͨ͠ͱ͖Ͳ͏͢Δʁ

Slide 5

Slide 5 text

ྫJ1BEͷΈͰςετΛ࣮ߦ͍ͨ͠ func test_iPadOnly_before() { // TODO: iPadઐ༻ͷςετΛ࣮ߦ͢Δ }

Slide 6

Slide 6 text

#FGPSFʢ9DPEFະຬʣ func test_iPadOnly_before() { let isIPad = (UIDevice.current.userInterfaceIdiom == .pad) guard isIPad else { return } // TODO: iPadઐ༻ͷςετΛ࣮ߦ͢Δ } ৗʹ੒ޭѻ͍ʹ͢Δ

Slide 7

Slide 7 text

"GUFSʢ9DPEFҎ߱ʣ func test_iPadOnly_after() throws { let isIPad = (UIDevice.current.userInterfaceIdiom == .pad) guard isIPad else { throw XCTSkip("This tests are for iPad only") } // TODO: iPadઐ༻ͷςετΛ࣮ߦ͢Δ }

Slide 8

Slide 8 text

#FGPSF "GUFS J1IPOFγϛϡϨʔλͰςετΛ࣮ߦ͢Δ ςετ࣮ߦ

Slide 9

Slide 9 text

ςετΛεΩοϓ͢ΔϝϦοτ w εΩοϓͨ͠ࣄ࣮ͱཧ༝͕໌ࣔ͞ΕΔ w ࣄ࣮ৗʹ੒ޭѻ͍ʹ͢Δͱɺຊ౰ʹ੒ޭ͔ͨ͠Θ͔Βͳ͍ w ཧ༝εΩοϓͨ͠ཧ༝ΛจࣈྻͰࢦఆͰ͖ɺςετ݁Ռ͔Β֬ೝͰ͖Δ

Slide 10

Slide 10 text

εΩοϓ͢Δํ๏͸छྨ͋Δ func test_iPadOnly_after() throws { let isIPad = (UIDevice.current.userInterfaceIdiom == .pad) // ᶃ guard isIPad else { throw XCTSkip("This tests are for iPad only") } // ᶄ try XCTSkipIf(!isIPad, "This tests are for iPad only") // ᶅ try XCTSkipUnless(isIPad, "This tests are for iPad only") } ᶄͱᶅΛ࢖͍෼͚Δͷ͕ Αͦ͞͏

Slide 11

Slide 11 text

͓·͚಺෦࣮૷͕ެ։͞Ε͍ͯΔ Ҿ༻IUUQTHJUIVCDPNBQQMFTXJGUDPSFMJCTYDUFTUCMPCNBTUFS4PVSDFT9$5FTU1VCMJD9$54LJQTXJGU

Slide 12

Slide 12 text

ࢀߟϦϯΫ w 4QFBLFS%FDLͷ֓ཁཝʹهࡌ