Slide 1

Slide 1 text

xctestίϚϯυͬͯ ஌͍ͬͯ·͔͢ʁ ॴ ༑ଠ @tokorom iOS App Programer These are “not” confidential sessions—please diffuse by your blogging and twitter potatotips #3

Slide 2

Slide 2 text

༧૝ • XCTestϑϨʔϜϫʔΫ͸஌͍ͬͯΔ • xctestίϚϯυͳΜͯ͋Δͷʁ

Slide 3

Slide 3 text

Xcode 5 ʹͳͬͯ • xcodebuildίϚϯυ͕௒ઈύϫʔΞοϓʂ • XcodeͰಛఆͷςετέʔε͚ͩΛୟ͘ͷ͕؆ ୯ʹͳͬͨ

Slide 4

Slide 4 text

Ͱ΋ • xcodebuildίϚϯυʹಛఆͷςετΛࢦఆ͢Δ ޱ͕ͳ͍ • ී௨ʹ͸CUI͔ΒಛఆͷςετΛ࣮ߦ͢Δํ๏ ͕ͳ͍ʂʂ

Slide 5

Slide 5 text

xctestίϚϯυͱ͸ʁ • xcodebuild test ͸಺෦తʹ xctest ίϚϯυΛୟ ͍͍ͯΔ •xctest -XCTest SampleTests/testSample Ͱ࣮ߦ͢ Δςετέʔε͕ࢦఆͰ͖Δ

Slide 6

Slide 6 text

ͨͩ͠… • xctestίϚϯυΛTerminalͰ௚઀ୟ͍࣮ͯߦ͢ Δͱ͔͸ৗਓʹ͸΄΅ෆՄೳ •΅͘͸ xctest Λ௚઀ୟ͍ͯςετ࣮ߦ͢Δͷʹ ؙ̎೔͔͔ؒͬͨ

Slide 7

Slide 7 text

น1: ͲͷxctestΛୟ͘ͷʁ

Slide 8

Slide 8 text

xctest͸͍͔ͭ͋͘Δ $ pwd /Applications/Xcode.app ! $ find . -name xctest ./Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/ iPhoneSimulator7.0.sdk/Developer/usr/bin/xctest ! ./Contents/Developer/usr/bin/xctest Xcode͔ΒͩͱϏϧυͨ͠όΠφϦʹ߹Θͤͯద੾ͳ΍ ͕ͭ࢖ΘΕ͍ͯΔͬΆ͍

Slide 9

Slide 9 text

น2: ϏϧυઃఆͷҾ͖ܧ͗

Slide 10

Slide 10 text

xcodebuild -showBuildSettings • ͜ΕͰϏϧυઃఆΛ֬ೝ͍ͯ͠Ζ͍Ζมߋ͠ ͳ͍ͱμϝ •build settings ͸xcodebuildʹ౉͢ଞͷΦϓγϣ ϯʹΑͬͯมΘΔͷͰ஫ҙʂʂ

Slide 11

Slide 11 text

น3: ؀ڥม਺ͷઃఆ

Slide 12

Slide 12 text

NSProcessInfo • NSProcessInfoΛ࢖ͬͯςετ࣮ߦ࣌ʹઃఆ͞ Ε͍ͯΔ؀ڥม਺ͱ͔ίϚϯυͷҾ਺ͱ͔͕෼ ͔Δ •͜Ε΋build settings ͷ಺༰ʹΑͬͯద੾ʹઃఆ ͢Δඞཁ͕͋Δ

Slide 13

Slide 13 text

ཁ͢Δʹී௨ʹୟ͘ͷ͸ແཧ

Slide 14

Slide 14 text

ͳͷͰϥΠϒϥϦԽ͠·ͨ͠ʂ

Slide 15

Slide 15 text

xctest-runner

Slide 16

Slide 16 text

xctest-runner $ gem install xctest-runner ! $ xctest-runner ! $ xctest-runner -test SampleTests/testSample

Slide 17

Slide 17 text

xctest-runner $ xctest-runner -scheme Tests ! $ xctest-runner -project Sample.xcodeproj -target Tests

Slide 18

Slide 18 text

(Vimͱ͔emacs͔Βฤूதͷςετ ͚࣮ͩߦͱ͔Ͱ͖ΔΑ͏ʹͳΔʂʣ

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

More Information Yuta ToKoRo! iOS App Programer! @tokorom! ! http://www.tokoro.me/ https://github.com/tokorom/xctest-runner