๊ธ€ ์ž‘์„ฑ์ž: ์ด์ง€์›๐ŸŒฉ๏ธ

iOS๋Š” ์ฒ˜์Œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์œ ๋‹› ํ…Œ์ŠคํŠธ ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ macOS > Command Line Tool ๋กœ ์ƒ์„ฑํ•œ ํ”„๋กœ์ ํŠธ๋Š” ์ดˆ๊ธฐ์— ์„ค์ •ํ•  ์ˆ˜ ์—†๋‹ค. Command Line Tool๋กœ ์ƒ์„ฑํ•œ ํ”„๋กœ์ ํŠธ์—์„œ ์œ ๋‹› ํ…Œ์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ์œ ๋‹›ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๋ณด๋Š” ๊ฒŒ ์ด ๊ธ€์˜ ๋ชฉํ‘œ๋‹ค.

  1. ๋จผ์ € XCode์—์„œ Command Line Toolํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๋‚˜๋Š” ์ ๋‹นํžˆ UnitTestProject๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด๋ฏธ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ๋‹ค๋ฉด ๊ฑด๋„ˆ๋›ฐ์–ด๋„ ๋ฌด๊ด€ํ•˜๋‹ค.

  2. ํ”„๋กœ์ ํŠธ๋ฅผ ์ฒ˜์Œ ์ƒ์„ฑํ–ˆ๋‹ค๋ฉด, ์ฒ˜์Œ ๋ณด์ด๋Š” ํ™”๋ฉด์ด ํ”„๋กœ์ ํŠธ ์„ค์ •ํŒŒ์ผ์ด๋‹ค. ํ”„๋กœ์ ํŠธ ์„ค์ •ํŒŒ์ผ์€ ํŒŒ์ผ ๋„ค๋น„๊ฒŒ์ดํ„ฐ์— ๊ฐ€์žฅ ์ƒ๋‹จ์— ์œ„์น˜ํ•ด์žˆ๋‹ค.
    ์ตœํ•˜๋‹จ ์ขŒ์ธก์— ์žˆ๋Š” + (add a target)์„ ํด๋ฆญํ•œ๋‹ค.

  3. Choose a template for your new target ํŒ์—…์ด ๋œจ๋ฉด Unit Testing Bundle์„ ์„ ํƒํ•œ๋‹ค.

  4. ์ ๋‹นํžˆ ์œ ๋‹›ํ…Œ์ŠคํŠธ ํ”„๋กœ๋•ํŠธ ์ด๋ฆ„์„ ์ง€์–ด์ค€๋‹ค. ๋ณดํ†ต์€ ProjectNameTests๋กœ ์ง“๋Š” ๊ฑฐ ๊ฐ™์•„์„œ ๋‚˜๋„ ๋˜‘๊ฐ™์ด UnitTestProjectTests๋กœ ์ง€์—ˆ๋‹ค.

  5. ์—ฌ๊ธฐ๊นŒ์ง€ํ•˜๋ฉด ๋๋‚œ๊ฑฐ๊ฐ™์ง€๋งŒ, ์•„์ง ๋๋‚œ๊ฒŒ ์•„๋‹ˆ๋‹ค. Product > Scheme > Edit Scheme... ๋ฅผ ๋ˆ„๋ฅธ๋‹ค.

  6. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŒ์—…์ด ๋œจ๋ฉด ์ขŒ์ธก ๋ฉ”๋‰ด์—์„œ Test๋ฅผ ์„ ํƒํ•˜๊ณ  + (Add test target)๋ฅผ ๋ˆ„๋ฅธ๋‹ค.

  7. 4์—์„œ ๋งŒ๋“  ์œ ๋‹› ํ…Œ์ŠคํŠธ ํ”„๋กœ๋•ํŠธ(?)๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

  8. ์œ ๋‹› ํ…Œ์ŠคํŠธ์—์„œ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด, ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ๋ชจ๋“ˆ์˜ ํŒŒ์ผ ์ธ์ŠคํŽ™ํ„ฐ์—์„œ Target Membership์— ์œ ๋‹› ํ…Œ์ŠคํŠธ ๋ชจ๋“ˆ์„ ์ฒดํฌํ•ด์ค€๋‹ค.

9. ์ง„์งœ์ง„์งœ ๋งˆ์ง€๋ง‰์œผ๋กœ... ์œ ๋‹› ํ…Œ์ŠคํŠธ ํŒŒ์ผ์— ํ…Œ์ŠคํŠธํ•˜๋ ค๋Š” ๋ชจ๋“ˆ์„ import ํ•ด์ค€๋‹ค. ์ด ๋•Œ import ์•ž์— @testable ํ‚ค์›Œ๋“œ๋ฅผ ๋ถ™์ธ๋‹ค.

import XCTest

@testable import UnitTestProject

class UnitTestProjectTests: XCTestCase {
    ...
}

 

์ง„์งœ ๋!

 

๋ฐ˜์‘ํ˜•