728x90
๋ฐ˜์‘ํ˜•
[Unit / UITest] Parallel Testing์œผ๋กœ Test์‹œ๊ฐ„์„ ์ค„์—ฌ๋ณด์ž

WWDC 2018 - What's New in Testing ์˜ Parallel Testing ๋‚ด์šฉ์„ ๊ธฐ๋ก โœ๏ธ [1] Parallel Testing์ด๋ž€ XCODE9 ๋ถ€ํ„ฐ Parallel Destination Testing์„ ์ง€์›ํ•œ๋‹ค. ์˜ˆ์ „์—๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ๋””๋ฐ”์ด์Šค๋ณ„๋กœ ๋‚˜๋ˆ ์„œ ๋Œ๋ฆฌ๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๋””๋ฐ”์ด์Šค1์—์„œ ๋ชจ๋“  ํ…Œ์ŠคํŠธ ๋‹ค ๋Œ๊ณ , ๋””๋ฐ”์ด์Šค2์—์„œ ๋ชจ๋“  ํ…Œ์ŠคํŠธ ๋‹ค ๋Œ๊ณ  ํ–ˆ์—ˆ๋Š”๋ฐ ์ด์ œ๋Š” ์ง„์งœ parallelํ•˜๊ฒŒ ํ…Œ์ŠคํŠธ๋ฅผ ๋‚˜๋ˆ ์„œ ๋Œ์•„์„œ ํ…Œ์ŠคํŠธ ์‹œ๊ฐ„์ด ํ›จ์”ฌ ์ค„์—ˆ๋‹ค. ์ž์„ธํžˆ ์‚ดํŽด๋ณด์ž!์—‘์Šค์ฝ”๋“œ๋Š” ๊ฐ uitest๋„๋Š” ์•ฑ(Runner๋ผ๊ณ  ํ‘œํ˜„)์—๊ฒŒ ํ…Œ์ŠคํŠธ๋ฅผ ๋‚˜๋ˆ ์ค€๋‹ค. ์ •ํ™•ํžˆ ๋งํ•˜๋ฉด XCode๋Š” ๊ฐ Runner์—๊ฒŒ ํ…Œ์ŠคํŠธ ํด๋ž˜์Šค๋ฅผ ๋‚˜๋ˆ ์ค€๋‹ค.(๊ฐ๊ฐ์˜ ํ…Œ์ŠคํŠธ ๋ฉ”์†Œ๋“œ๋ฅผ ๋‚˜๋ˆ ์ฃผ๋Š”๊ฒŒ ์•„๋‹˜) ๊ทธ๋ž˜์„œ ๊ฟ€ํŒ์„ ์ฃผ์…จ๋Š”๋ฐ ์ฝ”๋“œ๊ฐ€ ๋งŽ์€ ํด๋ž˜์Šค๋ฅผ ..

๐Ÿ/Unit & UI Test 2020. 11. 20. 16:18
[RxBlocking] toBlocking()๊ณผ BlockingObservable

์˜ต์ ธ๋ฒ„๋ธ”์ด completed๋˜๊ณ  ๋‚œ ํ›„, ๋งˆ์ง€๋ง‰ ๊ฐ’์„ ํ…Œ์ŠคํŠธ๋กœ ํ™•์ธํ•ด๋ณด๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์—ฐํžˆ ํ…Œ์ŠคํŠธ๊ฐ€ ์‹คํŒจํ•˜๊ฒ ์ฃ ..?! RxBlocking์„ ์“ฐ๋ฉด ์ด ํ…Œ์ŠคํŠธ๋Š” ์„ฑ๊ณตํ•ฉ๋‹ˆ๋‹ค..!! toBlockingํ•จ์ˆ˜๋ฅผ ์“ฐ๋ฉด Observable -> BlockingObservable๋กœ ๋ฐ”๋€Œ๊ณ  BlockingObservable์˜ lastํ•จ์ˆ˜๋Š” ์‹œํ€€์Šค๊ฐ€ ์ข…๋ฃŒ๋ ๋•Œ ๊นŒ์ง€ ๋ธ”๋Ÿฌํ‚นํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด์ฃ ....!! (Blocks current thread until sequence terminates.) ๊ทธ๋Ÿผ BlockingObservable์˜ ํ•จ์ˆ˜ ๋ช‡๊ฐ€์ง€๋ฅผ ๋” ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. [1] first() ์‹œํ€€์Šค์˜ ์ฒซ๋ฒˆ์งธ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐฉ์ถœ๋ ๋•Œ ๊นŒ์ง€ ๋ธ”๋Ÿฌํ‚นํ•ด์ค๋‹ˆ๋‹ค. (Blocks curre..

๐Ÿ/Unit & UI Test 2020. 4. 14. 19:17
[SPM & UnitTest] ํŽธ๋ฆฌํ•œ extension์„ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ์™€ ํ•จ๊ป˜ ์ž‘์„ฑํ•˜๊ณ  SPM์— ๋„ฃ์ž

'iOS Test Driven Development by Tutorials' ๋ผ๋Š” ์ฑ…์œผ๋กœ ์Šคํ„ฐ๋””๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ, ์ƒ˜ํ”Œํ”„๋กœ์ ํŠธ์— ์žˆ๋Š” ์ฐธ๊ณ ํ•  ๋งŒํ•œ ์ฝ”๋“œ์™€ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ €์˜ SPM์œผ๋กœ ์˜ฎ๊ฒจ์˜ค๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ์ธํ”„๋กœ์ ํŠธํ• ๋•Œ SPM์„ ์จ์„œ ๋” ํšจ์œจ์ ์ด๊ณ  ํŽธํ•˜๊ฒŒ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•จ์ž…๋‹ˆ๋‹ค. ์ด ํฌ์ŠคํŒ…์€ ๊ทธ ์ค‘, extension ๊ด€๋ จ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋” ๊ตฌ์กฐ, ํŒŒ์ผ ์ด๋ฆ„, ์ฝ”๋“œ์˜ ์ถœ์ฒ˜๋Š” ๋ชจ๋‘ ๐Ÿ‘raywenderlich๐Ÿ‘ ๋‹˜์ด์‹ฌ์„ ๋ฐํž™๋‹ˆ๋‹ค (์ €๋Š” ํ…Œ์ŠคํŠธ์ฝ”๋“œ๋งŒ ์กฐ๊ธˆ์”ฉ ๋ฐ”๊ฟจ์„๋ฟ...!) [1] UITableViewCell + Identifier ์ฒซ extension์˜ ์ฃผ์ธ๊ณต์€ UITableviewCell์˜ identifier์ž…๋‹ˆ๋‹ค...! 1.1 ์ฝ”๋“œ์ž‘์„ฑ Extensions > Identifiers ๋ฐ‘์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ..

๐Ÿ/Unit & UI Test 2019. 12. 24. 01:36
[XCTUnwrap] ๊ฐ•์ œ ์–ธ๋ž˜ํ•‘๊ณผ XCTUnwrap์œผ๋กœ ํ•œ ์–ธ๋ž˜ํ•‘์˜ ์ฐจ์ด์ 

XCTUnwrap ์€ ๋ง๊ทธ๋Œ€๋กœ ํ…Œ์ŠคํŠธ์—์„œ ์–ธ๋ž˜ํ•‘์„ ํ•ด์•ผํ•˜๋Š” ์ƒํ™ฉ์—์„œ ์“ฐ๋Š” ์–ธ๋ž˜ํ•‘ํ•จ์ˆ˜์ด๋‹ค. ๋‚˜๋Š” ํ…Œ์ŠคํŠธ์—์„œ๋Š” ๊ทธ๋ƒฅ ๋Š๋‚Œํ‘œ๋กœ ๊ฐ•์ œ ์–ธ๋ž˜ํ•‘์„ ํ•ด์ฃผ๋Š”๋ฐ, TDD ์Šคํ„ฐ๋””ํ•˜๋Š” ์ฑ…์—์„œ๋Š” ์ด ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ์–ธ๋ž˜ํ•‘์„ ํ•ด์ฃผ๋Š” ๊ฒƒ์„ ๋ณด์•˜๋‹ค. ๊ทธ๋ž˜์„œ ๋‘ ๋ฐฉ์‹์ด ๋ฌด์—‡์ด ๋‹ค๋ฅธ์ง€ ๊ธฐ๋กํ•œ๋‹ค. ๊ฐ’์ด nil์ด ์ƒํ™ฉ์—์„œ ๊ฐ•์ œ์–ธ๋ž˜ํ•‘์„ ํ•˜๋ฉด Fatal error๊ฐ€ ๋‚œ๋‹ค. => ํ…Œ์ŠคํŠธ ์‹คํŒจ๋กœ ํ‘œ์‹œ์•ˆ๋จ. XCTUnwrap์œผ๋กœ ์–ธ๋ž˜ํ•‘์„ ํ•ด์ฃผ๋ฉด ํ•ด๋‹น ๋ผ์ธ์—์„œ ํ…Œ์ŠคํŠธ ์‹คํŒจ๊ฐ€ ๋‚œ๋‹ค. => ํ…Œ์ŠคํŠธ ์‹คํŒจ๋กœ ํ‘œ์‹œ๋จ.

๐Ÿ/Unit & UI Test 2019. 12. 10. 13:20
[XCTAssert] XCTAssert์˜ line ํŒŒ๋ผ๋ฏธํ„ฐ

XCTAssert์—๋Š” line ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. (XCTAssert์˜ ์นœ๊ตฌ๋“ค์ธ XCTAssertEqual๊ณผ XCTAssertTrue ๋“ฑ๋“ฑ ์—๋„ ์žˆ์Šต๋‹ˆ๋‹ค.) failure์ด ์ผ์–ด๋‚œ ๋ผ์ธ์„ ๋„˜๊ฒจ์ฃผ๋ฉด, ํ•ด๋‹น ๋ผ์ธ์—์„œ ์‹คํŒจํ–ˆ๋‹ค๋Š” ํ‘œ์‹œ๋ฅผ ๋„์›Œ์ค๋‹ˆ๋‹ค. ์ด๊ฒŒ ์–ธ์ œ ์“ฐ์ด๋ƒ๋ฉด....!!!! Assert๋ฌธ์„ ํ•˜๋‚˜์˜ ํ•จ์ˆ˜๋กœ ๋นผ์„œ ์—ฌ๋Ÿฌ ํ…Œ์ŠคํŠธ ํ•จ์ˆ˜์—์„œ ์‚ฌ์šฉํ• ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ์“ฐ์ž…๋‹ˆ๋‹ค [1] line์„ ๋„˜๊ฒจ์ฃผ์ง€ ์•Š์•˜์„๋•Œ ์ด ์ƒํƒœ์—์„œ testSecondText๋ฅผ ๋Œ๋ ค๋ณด๋ฉด ๋”ฑ Assertํ•จ์ˆ˜์—์„œ ์‹คํŒจ๋ฉ”์„ธ์ง€๊ฐ€ ๋œน๋‹ˆ๋‹ค ๊ทธ๋ฆฌ๊ณ  testFirstText๋ฅผ ๋Œ๋ ค๋ณด๋ฉด ๋”ฑ Assertํ•จ์ˆ˜์—์„œ ์‹คํŒจ๋ฉ”์„ธ์ง€๊ฐ€ ๋œน๋‹ˆ๋‹ค [2] line์„ ๋„˜๊ฒจ์ค„ ๋•Œ testSecondText๋ฅผ ๋Œ๋ ค๋ณด๋ฉด ์‹คํŒจํ•œ ํ•ด๋‹น ํ…Œ์ŠคํŠธ์•ˆ์—์„œ ์‹คํŒจ๋ฉ”์„ธ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค testFirstTe..

๐Ÿ/Unit & UI Test 2019. 12. 9. 11:48
[Unit Test] Testableํ•œ ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ 2๊ฐ€์ง€ ์Šคํ‚ฌ๊ณผ ์˜ˆ์ œ (from WWDC 2017 - Engineering For Testability)

WWDC 2017 - Engineering For Testability ์˜ ๋‚ด์šฉ์ด ์ข‹์•„์„œ ๊ธฐ๋กํ•ด๋‘ก๋‹ˆ๋‹ค ์ด ๋ฐœํ‘œ์—์„œ๋Š” ์ด๋ ‡๊ฒŒ ๋‘๊ฐ€์ง€ ์„ธ์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค ๊ทธ ์ค‘, ์ฒซ๋ฒˆ์งธ ์„ธ์…˜์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋Š” Testable App Code์— ๊ด€ํ•œ ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค...!! ์ด ์„ธ์…˜์—์„œ๋Š” 'Testableํ•œ ์ฝ”๋“œ์˜ ํŠน์ง•์ด ๋ฌด์—‡์ธ์ง€์™€ ๊ทธ๋Ÿฐ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ์Šคํ‚ฌ' ์— ๋Œ€ํ•ด ์•Œ๋ ค์ค๋‹ˆ๋‹ค. ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋งํ•˜์ž๋ฉด, 1) Testableํ•œ Code๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง•์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค 2) Testableํ•œ Code๋ฅผ ๋งŒ๋“ค๊ธฐ์œ„ํ•ด ๋‘๊ฐ€์ง€ ์Šคํ‚ฌ์„ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์ด์ œ ๋ณธ๊ฒฉ์ ์œผ๋กœ Testableํ•œ ์ฝ”๋“œ๋กœ ๋ฆฌํŒฉํ† ๋งํ•ด๋ด…์‹œ๋‹ค....!! ๊ทธ ์ „์— Unit Test์˜ ๊ตฌ์กฐ๋ถ€ํ„ฐ ๋ด…์‹œ๋‹ค input์„ ์ค€๋น„ํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ๋˜์–ด์•ผํ•˜๋Š” ์ฝ”๋“œ(๋ณดํ†ต ํ•จ์ˆ˜๋ฅผ ๋งํ•จ)์— input์„ ๋„ฃ์Šต..

๐Ÿ/Unit & UI Test 2019. 9. 11. 23:00
[UI Test] ํ™•์žฅ๊ฐ€๋Šฅํ•œ UI Test๋กœ ๋ฆฌํŒฉํ† ๋ง ํ•ด๋ณด์ž (from WWDC 2017 - Engineering For Testability)

WWDC 2017 - Engineering For Testability ์˜ ๋‘๋ฒˆ์งธ ์„ธ์…˜์ธ "Scalable Test Code" ์—์„œ ๋ณด์—ฌ์ฃผ์…จ๋˜ UI Test ๋ฆฌํŒฉํ† ๋ง ์˜ˆ์‹œ๊ฐ€ ์ข‹์•„์„œ ๊ธฐ๋กํ•ด๋‘ก๋‹ˆ๋‹ค ์ฒซ๋ฒˆ์งธ ์˜ˆ์ œ ์ด๋Ÿฐ ์ฝ”๋“œ๋ฅผ ์ด๋ ‡๊ฒŒ ๋ฆฌํŒฉํ† ๋งํ•˜์—ฌ ํ™•์žฅ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“ค์ž ๋‘๋ฒˆ์งธ ์˜ˆ์ œ ๋‚œ์ด๋„๋ฅผ beginner๋กœ, ์‚ฌ์šด๋“œ๋ฅผ off๋กœ ํ•œ ์ƒํƒœ์—์„œ ์–ด๋–ค ๊ฒƒ์„ ํ…Œ์ŠคํŠธํ•˜๋Š” ์ฝ”๋“œ ์ž…๋‹ˆ๋‹ค // test code ๋’ค์—๋Š” ์•„๋งˆ Assert๋ฌธ์ด ๋“ค์–ด๊ฐ€๊ฒ ์ฃ ?! ์ด๋ ‡๊ฒŒ ๋‚œ์ด๋„ ์„ค์ •๊ณผ ์‚ฌ์šด๋“œ ์„ค์ •์„ ๋ถ„๋ฆฌํ•ด์„œ ํ™•์žฅ๊ฐ€๋Šฅ์„ฑ์„ ๋†’์—ฌ์ค์‹œ๋‹ค ๋” ๋‚˜์•„๊ฐ€ ์„ค์ •๊ฐ€๋Šฅํ•œ ๊ฐ’์ด ์ œํ•œ๋˜์–ด์žˆ๋Š” ๋‚œ์ด๋„์™€ ์‚ฌ์šด๋“œ์ด๋‹ˆ enum์„ ํ™œ์šฉํ•˜๋ฉด ๋” ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค~= ์ง ! ์ด๋ ‡๊ฒŒ ํ›จ์”ฌ ๊น”๋”ํ•˜๊ณ  ์ฝ๊ธฐ ์ข‹์€ UI Test ์ฝ”๋“œ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค ๋” ํ™•์žฅ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“ค์–ด๋ด…์‹œ๋‹ค!!!!!!! ์ด๋ ‡..

๐Ÿ/Unit & UI Test 2019. 9. 11. 22:35
[Test-Concept] ํ…Œ์ŠคํŠธ ์™œ ํ•„์š”ํ•˜๊ณ  ํ•ด์•ผํ•˜๋Š”๊ฐ€?!

์–ด์ œ ํ…Œ์ŠคํŠธ ๊ด€๋ จ ์„ธ๋ฏธ๋‚˜๋ฅผ ๋“ฃ๊ณ  ์™”๋Š”๋ฐ, ์Šคํ”ผ์ปค๋ถ„๋“ค์ด ๊ฒฝํ—˜๋‹ด์„ ๋ง์”€ํ•ด์ฃผ์‹œ๋ฉด์„œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๋‚˜์„œ ๋ฌด์—‡์ด ์ข‹์•˜๊ณ  ๋‹ฌ๋ผ์กŒ๋Š”์ง€, ๊ทธ๋ž˜์„œ ํ…Œ์ŠคํŠธ๋Š” ์™œ ํ•„์š”ํ•œ์ง€์— ๋Œ€ํ•ด ๋‚˜๋ˆ ์ฃผ์…จ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ "๋ถˆ์•ˆ ์š”์†Œ๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ์ด ์ž˜ํ•˜๋Š” ๊ฐœ๋ฐœ์ด๋‹ค. ๊ทธ๋ž˜์„œ ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•˜๋‹คโ€ฆ!" ๋ผ๊ณ  ํ•˜์…จ๋˜ ๊ฒƒ์ด ๊ฐ€์žฅ ๊ธฐ์–ต์— ๋‚จ๋„ค์š” ๊ทธ๋Ÿผ ๊ตฌ์ฒด์ ์œผ๋กœ ํ…Œ์ŠคํŠธ์˜ ํ•„์š”์„ฑ์— ๋Œ€ํ•ด ์‚ดํŽด๋ด…์‹œ๋‹ค 1. ๋ฆฌํŒฉํ† ๋ง์— ๋Œ€ํ•œ ํ™•์‹  ํ…Œ์ŠคํŠธ๋Š” ์ด์ „์˜ ๋™์ž‘์ด ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์•˜์Œ์„ ๋‹ด๋ณดํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์น˜ ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด Calculator์˜ addํ•จ์ˆ˜๋ฅผ ํ…Œ์ŠคํŠธํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ์žˆ๋‹ค๋ฉด, ์ด๋ ‡๊ฒŒ ์œ„ ํ•จ์ˆ˜์—์„œ ์•„๋ž˜ ํ•จ์ˆ˜๋กœ addํ•จ์ˆ˜๋ฅผ ๋ฆฌํŒฉํ† ๋งํ•ด๋„ ๋™์ž‘์ด ์ž˜๋˜๋Š”๊ตฌ๋‚˜!! ๋ผ๋Š” ํ™•์‹ ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๊ฒ ์ฃ . ๋ฆฌํŒฉํ† ๋ง ํ•œ ํ›„ ํ…Œ์ŠคํŠธ๋ฅผ ๋Œ๋ ค์„œ ๊ธฐ์กด ๋™์ž‘์ด ์ž˜ ๋Œ์•„๊ฐ€๋Š” ์ง€ ์‰ฝ๊ฒŒ ํ™•์ธํ•  ์ˆ˜..

๐Ÿ/Unit & UI Test 2019. 9. 1. 15:09
[Test-Concept] ํ…Œ์ŠคํŠธ ํ”ผ๋ผ๋ฏธ๋“œ

ํ…Œ์ŠคํŠธ ํ”ผ๋ผ๋ฏธ๋“œ๋ผ๋Š” ๊ฐœ๋…์€ ์• ํ”Œ์—์„œ ์ œ์‹œํ•œ ์•„์ด๋””์–ด ์ธ ์ค„ ์•Œ์•˜๋Š”๋ฐ, ์•ˆ๋“œ๋กœ์ด๋“œ ํ…Œ์ŠคํŠธ ์„ธ๋ฏธ๋‚˜(์ด๋ฆ„: ์•ˆ๋“œ๋กœ์ด๋“œ ํƒ๊ตฌ์˜์—ญ)๋ฅผ ๋“ฃ๊ณ  ์™€์„œ ๋‘๋ฃจ ์“ฐ์ด๋Š” ๊ฐœ๋…์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค ๊ทธ๋ž˜์„œ ๋ง๋ถ™์—ฌ์„œ ๋‹ค์‹œ ์ •๋ฆฌ...!! ํ…Œ์ŠคํŠธ ํ”ผ๋ผ๋ฏธ๋“œ๋Š” ์ด๋ ‡๊ฒŒ ์ƒ๊ธด ๊ฒƒ ์ž…๋‹ˆ๋‹ค ์„ธ๋ฏธ๋‚˜์—์„œ ์šฐ์„ญ๋‹˜(๋ฑ….์ƒ)์ด ํ…Œ์ŠคํŠธ ํ”ผ๋ผ๋ฏธ๋“œ๋ฅผ ์ด๋Ÿฐ ๊ทธ๋ฆผ์œผ๋กœ ์ •๋ฆฌํ•ด์ฃผ์…จ๋Š”๋ฐ์š”, y์ถ•๋ถ€ํ„ฐ ๋ด…์‹œ๋‹ค..! ์œ„๋กœ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜๋ก ์‹ค์ œ๋กœ ๋Œ์•„๊ฐ€๋Š”, ์œ ์ €๊ฐ€ ์“ฐ๋Š” ์˜์—ญ์ด๋ผ ๋ฏฟ์„ ๋งŒํ•œ ์˜์—ญ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹คํ–‰์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ณ  ์œ ์ง€๋ณด์ˆ˜, ๋””๋ฒ„๊น… ํ•˜๊ธฐ ๋”์šฑ ์–ด๋ ค์šด ์˜์—ญ์ž…๋‹ˆ๋‹ค. ๊ทธ ๋‹ค์Œ x์ถ•์„ ๋ด๋ด…์‹œ๋‹ค..! ๋ฐ‘์œผ๋กœ ๋‚ด๋ ค ์˜ฌ ์ˆ˜๋ก ๋” ๋งŽ์€ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค ์ด๋Ÿฐ ํ”ผ๋ผ๋ฏธ๋“œ ์ ‘๊ทผ๋ฒ•์€ ์–ด๋–ค ์œ ์ต์ด ์žˆ์„ ๊นŒ์š”?! ์• ํ”Œ์— ์˜ํ•˜๋ฉด, ํ”ผ๋ผ๋ฏธ๋“œ ๋ชจ๋ธ ์ ‘๊ทผ๋ฒ•์€ ์ฒ ์ €์„ฑ(thor..

๐Ÿ/Unit & UI Test 2019. 9. 1. 10:18
๊ณต์ง€์‚ฌํ•ญ
Total
399,591
Today
442
Yesterday
497
๋งํฌ
«   2021/12   »
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
๊ธ€ ๋ณด๊ด€ํ•จ