Nunit: ๊ธฐ์กด Chocolatey ํ”„๋ ˆ์ž„์›Œํฌ ํŒจํ‚ค์ง€ ์ง€์› ์ค‘๋‹จ

์— ๋งŒ๋“  2015๋…„ 01์›” 09์ผ  ยท  89์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: nunit/nunit

Chocolatey ๋Š” PowerShell์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ ๋จธ์‹ ์„ ์„ค์ •ํ•˜๊ณ  ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์„ค์น˜ํ•˜๋Š” ์ธ๊ธฐ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์€ ์ด๋ฏธ NUnit 2 Chocolatey ํŒจํ‚ค์ง€( https://chocolatey.org/packages/nunit )๋ฅผ ์ถœ์‹œํ–ˆ์ง€๋งŒ ๊ณต์‹ ๊ฒ€์ฆ ๋ฒ„์ „์„ ์ถœ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

NuGet์ด ์šฐ๋ฆฌ์˜ ์ฃผ์š” ๋ฐฐํฌ ์ฑ„๋„์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋‚ฎ์€ ์šฐ์„ ์ˆœ์œ„๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์žˆ์ง€๋งŒ, Chocolatey์˜ ์ตœ๊ทผ ์„ฑ๊ณต์ ์ธ KickStarter ์บ ํŽ˜์ธ์œผ๋กœ ์ธํ•ด NuGet์€ ๋”์šฑ ์ธ๊ธฐ๋ฅผ ์–ป๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€ ์ƒ์„ฑ์— ๋Œ€ํ•œ ์ •๋ณด๋Š” https://github.com/chocolatey/chocolatey/wiki/CreatePackages ์—์„œ

done build enhancement normal

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์œ ์—ฐ์„ฑ์„ ์œ„ํ•ด ์กฐ์ง ๊ณ„์ •์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  89 ๋Œ“๊ธ€

๋‚˜์—๊ฒŒ ์ข‹์€ ์†Œ๋ฆฌ. ์ดˆ์ฝœ๋ฆฟ ๊ฐ™์€(๊ทธ๋ฆฌ๊ณ  ๋„ˆ๊ฒŸ) ์ฒ ํ•™์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ํŒจํ‚ค์ง€๋กœ ๋ถ„ํ• ๋˜์–ด์•ผ ํ•˜๋ฉฐ ์•„๋งˆ๋„ ์ข…์†์„ฑ์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ฝ˜์†” ๋Ÿฌ๋„ˆ ํ”Œ๋Ÿฌ์Šค ์—”์ง„์„ ์œ„ํ•œ ์ข‹์€ ์ดˆ์ฝœ๋ฆฟ ์„ค์น˜๊ฐ€ ์žˆ๋‹ค๋ฉด ๋™๋“ฑํ•œ nuget ํŒจํ‚ค์ง€๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ˆ˜ํ–‰๋˜์–ด์•ผ ํ•˜์ง€๋งŒ, ์ดˆ์ฝœ๋ฆฟ ์„ค์น˜๋Š” ๋ณธ์งˆ์ ์œผ๋กœ ๋‹ค๋ฅธ ์„ค์น˜๋ฅผ ๋ž˜ํ•‘ํ•˜๋ฏ€๋กœ ๊ตฌํ˜„์€ ์šฐ๋ฆฌ๊ฐ€ ์ง€์›ํ•˜๋Š” ๋‹ค๋ฅธ ์„ค์น˜๋ฅผ ๊ฒฐ์ •ํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@CharliePoole , ๋‚˜๋Š” ์ด๊ฒƒ์— ๊ด€์‹ฌ์ด ์žˆ๊ณ  ๊ตฌํ˜„์— ๋Œ€ํ•œ ๋ช‡ ๊ฐ€์ง€ ์งˆ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • bin ๋ฐ Windows ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ์™ธ์— NUnit์€ ์–ด๋–ค ๋‹ค๋ฅธ ์„ค์น˜๋ฅผ ๊ณ ๋ คํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?
  • ์˜๋ฏธ๋ก ์  ๋ฐฉ์‹์˜ NUnit ๋ฒ„์ „์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฃน์ด ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋ฅผ ์ถœ์‹œํ•˜๋Š” ๋Œ€์‹  Chocolatey ํŒจํ‚ค์ง€ ๋ฒ„์ „์„ ๋™๊ธฐํ™” ์ƒํƒœ๋กœ ์œ ์ง€ํ•ด๋„ ๊ดœ์ฐฎ์„๊นŒ์š”?
  • NUnit์˜ Chocolatey ํŒจํ‚ค์ง€์— ์—”์ง„๊ณผ ์ฝ˜์†” ๋Ÿฌ๋„ˆ๊ฐ€ ๋ชจ๋‘ ํฌํ•จ๋˜์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๊นŒ?

๊ฐ์‚ฌ ํ•ด์š”!

@DustinVenegas ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋Š” NUnit 2.x์—์„œ ์‹ค์งˆ์ ์œผ๋กœ ๋‹ค์‹œ ์ž‘์„ฑ๋œ NUnit 3.0์šฉ์ž…๋‹ˆ๋‹ค. ์ดˆ์ฝœ๋ฆฟ ์šฉ๋„๋กœ ์ƒˆ ์ œํ’ˆ์œผ๋กœ ์ทจ๊ธ‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ง ๊ฒฐ์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

NUnit 2.6.4์šฉ ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋ฅผ ๋ฐœํ–‰ํ•  ์˜ˆ์ •์ด๋ฉฐ, ์ด๋Š” 2.6.3์šฉ์œผ๋กœ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฑฐ์˜ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”์ด์ € ๋ฒ„์ „์˜ ๊ฒฝ์šฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ƒํ˜ธ ๊ด€๋ จ๋œ ์ž‘์€ ํŒจํ‚ค์ง€๋ฅผ ์„ ํ˜ธํ•˜์—ฌ ๋ชจ๋“  ๊ฒƒ์„ ์„ค์น˜ํ•˜๋Š” ๋Œ€๊ทœ๋ชจ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋ฒ—์–ด๋‚˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ์˜ ์ ์ ˆํ•œ ํŒจํ‚ค์ง• ์Šคํƒ€์ผ์ž…๋‹ˆ๋‹ค..

๊ท€ํ•˜์˜ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€:

  • ์ดˆ์ฝœ๋ฆฟ ์™ธ์—๋„ ๋ฐ”์ด๋„ˆ๋ฆฌ zip, Windows ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ๋ฐ Nuget ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ง GUI๊ฐ€ ์—†์ง€๋งŒ ๋งŒ๋“ค ๋•Œ ๋ณ„๋„๋กœ ํฌ์žฅํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฒ ํƒ€์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€๋Š” ํ™•์‹คํžˆ ์ตœ์ข… ๋‹จ์–ด๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ผ๋ถ€๋Š” ๋ถ„ํ• ๋  ์ˆ˜ ์žˆ๊ณ  ์ƒˆ ํŒจํ‚ค์ง€๋Š” ํ™•์‹คํžˆ ์ถ”๊ฐ€๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • "Chocolatey ํŒจํ‚ค์ง€๋ฅผ ๋™๊ธฐํ™” ์ƒํƒœ๋กœ ์œ ์ง€"ํ•œ๋‹ค๋Š” ๋ง์ด ๋ฌด์Šจ ๋œป์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. 3.0 ํŒจํ‚ค์ง•์ด ํ˜„์žฌ ์กด์žฌํ•˜๋Š” ๊ฒƒ๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š์„ ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค. ์•„์ง ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ž‘์—…ํ•˜์ง€ ์•Š์€ ํ•œ ๊ฐ€์ง€ ์ด์œ ๋Š” ์ƒ์„ฑํ•  ๋ฐ”์ด๋„ˆ๋ฆฌ ๋“œ๋กญ ๋ฐ msis๋ฅผ ํ™•์ •ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์›๋ž˜ ๊ฐœ๋…์—์„œ ์ฝ˜์†”, ์—”์ง„ ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์™„์ „ํžˆ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋””์ž์ธ์˜ ์ด ๋‹จ๊ณ„์—์„œ ์ž‘์—…ํ•˜๊ธฐ๊ฐ€ ํ›จ์”ฌ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์— ์ง€๊ธˆ๊นŒ์ง€ ๋ฒ ํƒ€๋ฅผ ํ†ตํ•ด ํ•จ๊ป˜ ์œ ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๋ช‡ ๊ฐ€์ง€ ์žฅ์• ๋ฌผ์„ ๊ทน๋ณตํ•  ์ˆ˜๋งŒ ์žˆ๋‹ค๋ฉด ๊ทธ๊ฒƒ๋“ค์€ ๋ณ„๋„๋กœ ๋ฒ„์ „ํ™”๋˜๊ณ  ๋ฆด๋ฆฌ์Šค๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
  • ๊ท€ํ•˜์˜ ๋งˆ์ง€๋ง‰ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์€ "์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค."์ž…๋‹ˆ๋‹ค. :-)

๋‚˜๋Š” ์—ฌ์ „ํžˆ ์ดˆ์ฝœ๋ฆฟ์— ๋Œ€ํ•ด ๋ฌด์ง€ํ•˜๋‹ค. 2.6.4 ํŒจํ‚ค์ง€ ์ž‘์—…์„ ํ†ตํ•ด ์ด๋ฅผ ์•Œ๊ฒŒ ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‹จ์ˆœํžˆ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์„ ๋Œ์–ด๋“ค์ด๋Š” ํŒจํ‚ค์ง€์ธ ๋ฉ”ํƒ€ ํŒจํ‚ค์ง€๋ฅผ ์ง€์›ํ•œ๋‹ค๊ณ  ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์ƒ ํŒจํ‚ค์ง€(์˜ˆ: ํ•˜๋‚˜ ์ด์ƒ์˜ ์‹ค์ œ ํŒจํ‚ค์ง€๋กœ ์ถฉ์กฑ๋  ์ˆ˜ ์žˆ๋Š” ์ข…์†์„ฑ)๋„ ์ง€์›ํ•ฉ๋‹ˆ๊นŒ?

@์ฐฐ๋ฆฌํ’€ ,

NUnit ํŒจํ‚ค์ง€๋Š” ๊ฐ€์ƒ ํŒจํ‚ค์ง€๊ฐ€ ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํฌํ„ฐ๋ธ” ํŒจํ‚ค์ง€๋Š” "bin deploy"์— ๋Œ€ํ•œ Chocolatey ๋ช…๋ช…๋ฒ•์ž…๋‹ˆ๋‹ค. ์„ค์น˜ ํŒจํ‚ค์ง€๋Š” ๋ฎ๊ฐœ ์•„๋ž˜์— ์žˆ๋Š” Windows ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๋‚˜๋Š” Chocolatey์—์„œ ๋ณ„๋„์˜ NUnit3 ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ _๊ถŒ์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค_. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ์‚ฌ์šฉ์ž๋Š” "nunit" ํŒจํ‚ค์ง€์— ์˜์กดํ•˜์—ฌ 2x ์‹œ๋ฆฌ์ฆˆ๋ฅผ ์„ค์น˜ํ•˜๊ณ  "nunit3"์— ์˜์กดํ•˜์—ฌ ์ตœ์‹  ๋ฒ„์ „์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” semver์— ์‰ฝ๊ณ  ์•ˆ์ •์ ์œผ๋กœ ์˜์กดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์„ค์น˜ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด...

  • NUnit2: choco install nunit -๋ฒ„์ „ 2.*
  • ์ตœ์‹  NUnit: choco install nunit
  • ํŠน์ • NUni3: choco install nunit -version 3.0.0-beta.1

์˜ค๋ฅธ์ชฝ. ๊ทธ๋Ÿฌ๋‚˜ ์„ค์น˜๋˜๋Š” ๊ธฐ๋ณธ ํŒจํ‚ค์ง€๊ฐ€ NUnit 2.x์™€ ๋™์ผํ•œ ๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ฅด๋Š” ๊ฒฝ์šฐ์—๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ฐธ์กฐํ•  ๋งŒ๋Šฅ Windows ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ์—†๋‹ค๋ฉด Chocolatey์—๋Š” ๊ทธ๋Ÿฌํ•œ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

NUnit 3.0์€ NUnit 2.x์™€ ์™„์ „ํžˆ ํ•˜์œ„ ํ˜ธํ™˜๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์„ค๊ณ„์ƒ ์‚ฌ์šฉ์ž๊ฐ€ ์–ธ์ œ๋“ ์ง€ ์ž๋™ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ๋ฐ›๋Š” ๊ฒƒ์€ ์ข‹์ง€ ์•Š์€ ์ƒ๊ฐ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ฆ‰,
1) NUnit 3.0์˜ ๊ธฐ๋ณธ ํŒจํ‚ค์ง€ ๊ตฌ์กฐ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
2) ๋‚˜๋Š” ์‹ค์ œ๋กœ Chocolatey์— ๋Œ€ํ•ด ๋” ๋งŽ์ด ์•Œ๊ณ  ์žˆ๋‹ค. :-)

๋ณธ์งˆ์ ์œผ๋กœ ์ด๊ฒƒ์ด 3.0 ์ด์ •ํ‘œ์— ์žˆ๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ๋ชจ๋“  ๋ฒ ํƒ€๊ฐ€ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•  ๊ณ„ํš์ด ์—†์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ์ด๊ฒƒ์„ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๊นŒ?

nunit.org๋ฅผ ์Šคํฌ๋žฉํ•˜๋ฉด ํ˜„์žฌ ํŒจํ‚ค์ง€๊ฐ€ ์ž๋™์œผ๋กœ ์ˆ˜์ง‘๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. (์šฐ์—ฐํžˆ 3.4.1์—์„œ ๊ณ ์žฅ๋‚ฌ๊ณ , nunit.org/download ํŽ˜์ด์ง€๊ฐ€ ํ•ญ์ƒ GitHub์— ๋งํฌ๋˜์—ˆ์Šต๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ์ƒˆ ํŽ˜์ด์ง€์ž…๋‹ˆ๊นŒ?) ํ”ผ๋“œ๋กœ ์‚ฌ์šฉํ•˜๋ฉด ํ”ผํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ 3๊ฐœ์˜ nunit ํŒจํ‚ค์ง€๊ฐ€ ์žˆ๊ณ  ~15,000 ๋‹ค์šด๋กœ๋“œ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ์ƒ๋‹นํ•œ ์–‘์˜ ์‚ฌ์šฉ์ด ์ด๋ฃจ์–ด์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์žˆ๋Š” ํ›„ ์‚ดํŽด๋ณด๋Š” ๊ฒƒ์ด ์ข‹์ง€ ์•Š์„๊นŒ์š”?

@ChrisMaddock Chocolatey๋Š” ์ž๋™ํ™”๋œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์‚ฐํ•˜๋Š” ๊ฒƒ์„ ์ƒ์‚ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ ์›น์‚ฌ์ดํŠธ๋ฅผ ์Šคํฌ๋žฉํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๊ฒฐ์ฝ” ๊นจ๋‹ซ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์‰ฝ๊ฒŒ ๊นจ์งˆ ์ˆ˜ ์žˆ๋Š” ์ ‘๊ทผ ๋ฐฉ์‹์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€๋ฅผ ๋ณ€๊ฒฝํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํŽ˜์ด์ง€๊ฐ€ ๊นจ์ ธ๋„ ๋†€๋ž์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ดˆ์ฝœ๋ฆฟ ํฌ์žฅ์„ ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค๊ณผ ํ•จ๊ป˜ ๋ญ”๊ฐ€๋ฅผ ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ๊ณ  ์‚ฌ์‹ค ๊ทธ๋“ค์€ ๋‚˜๋ฅผ ํฌ์žฅ์—…์ž ์ค‘ ํ•˜๋‚˜๋กœ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ์—๊ฒŒ ์ตœ์†Œํ•œ์˜ ์˜ํ–ฅ์„ ์ค„ ๊ฒƒ์ด๊ณ  ๊ถ๊ทน์ ์œผ๋กœ ์šฐ๋ฆฌ ์Šค์Šค๋กœ ์ดˆ์ฝœ๋ฆฟ ํฌ์žฅ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ์šฐ๋ฆฌ๊ฐ€ ๊ทธ๊ฒƒ์„ ์ œ๊ฑฐํ•  ๊ฒƒ์ด๋ผ๊ณ  ๋‹น์‹œ์— ๊ทธ๋“ค์—๊ฒŒ ๋งํ–ˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ , ๊ทธ๋Ÿฌ๋‚˜ msi๋ฅผ ๊ณ„์† ํŒจํ‚ค์ง€ํ•ฉ๋‹ˆ๋‹ค.

์˜คํ”ˆ ์†Œ์Šค ๋ฆฌ๋ˆ…์Šค ์„ธ๊ณ„์—์„œ ํŒจํ‚ค์ง€ ์ œ์ž‘์ž๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋Œ€๋กœ ํ•˜๊ณ  ์—…์ŠคํŠธ๋ฆผ ๊ฐœ๋ฐœ์ž๋Š” ์ด์— ๋Œ€ํ•ด ๋ณ„๋กœ ๋งํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค. ์ดˆ์ฝœ๋ฆฟ์„ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ๊ทธ ๊ตฌ์กฐ๋ฅผ Windows์—๋„ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์˜€์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๋‚ด๊ฐ€ ๋„ˆ๋ฌด ์‰ฝ๊ฒŒ ํฌ๊ธฐํ•œ ๊ฒƒ์ผ ์ˆ˜๋„ ์žˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ์ž์‹ ์—๊ฒŒ ํ• ๋‹นํ•˜๊ณ  ์‹œ๋„ํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถ”์‹ : V2 ๋ฐ V3 msis๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ํŒจํ‚ค์ง€๋งŒ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์„ธ ๋ฒˆ์งธ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋‚˜๋Š” V2์™€ V3 msis์˜ ๋‘ ๊ฐ€์ง€ ํŒจํ‚ค์ง€๋งŒ ์•Œ๊ณ  ์žˆ๋‹ค. ์„ธ ๋ฒˆ์งธ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ทธ๋“ค์€ ํ˜„์žฌ msi, .zip(๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ) ๋ฐ "๋ฉ”ํƒ€ ํŒจํ‚ค์ง€"๋ฅผ ํŒจํ‚ค์ง•ํ•˜๋ฉฐ, ์ด๋Š” "NUnit"("NUnit(์„ค์น˜)"์™€ ๋ฐ˜๋Œ€)์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ msi๋ฅผ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค. ์ด๋“ค์€ ๋ชจ๋‘ ๋ฒ„์ „ 2.6.4 ๋ฐ 3.X์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ด ๋‘ ๊ฐ€์ง€๋ฅผ ๋ชจ๋‘ ๊ณ„์†ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. msi๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ๊ณ„์†ํ•ด์„œ ์ผ์ข…์˜ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. zip์€ ์—”์ง„/์ฝ˜์†”/์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ๋ฌด์—‡์„ ์„ค์น˜ํ• ๊นŒ์š”? NuGet์€ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์ฃผ์š” ๋ฐฐํฌํŒ์œผ๋กœ ๋‚จ์•„ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‚ด์šฉ์€ ๋ณ€๊ฒฝ๋˜์ง€๋งŒ zip์„ ์ค‘์ง€ํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

๋‚ด ๊ฒฌํ•ด๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ดˆ์ฝœ๋ฆฟ์„ ์œ„ํ•ด ํŠน๋ณ„ํ•œ ๊ฒƒ์„ ํฌ์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”๋กœ ํ•˜๋Š” ์ฝค๋ณด๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ํ•ด๋‹น ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ˆœ์ „ํžˆ ์Šต๊ด€์—์„œ ํŠน์ • ํŒจํ‚ค์ง€ ์œ ํ˜•์„ ์›ํ•  ๋•Œ ์•ฝ๊ฐ„๋งŒ ๋’ค๋กœ ๋ฌผ๋Ÿฌ๋‚˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฒฐํ•ฉ๋œ ํ”„๋ ˆ์ž„์›Œํฌ์™€ ๋Ÿฌ๋„ˆ๊ฐ€ "nunit ์‹œ์ž‘ํ•˜๊ธฐ" ํŒจํ‚ค์ง€์˜ ๊ฒฝ์šฐ๋ฅผ ์ œ์™ธํ•˜๊ณ  ๊ทธ๋Ÿฐ ๊ฒƒ๋“ค ์ค‘ ํ•˜๋‚˜๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ์—๊ฒŒ ์ค‘์š”ํ•œ ๊ฒƒ์€ ์ดˆ์ฝœ๋ฆฟ์„ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์ธ์‹ํ•œ ๊ฒƒ๊ณผ ๋™์ผํ•œ ๊ฒƒ์„ ์ธ์‹ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํŒจํ‚ค์ง• ๋ฒˆ๋“ค์€ ์ฒ˜์Œ๋ถ€ํ„ฐ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ๊ณผ ๋‹ค๋ฅด๋ฉฐ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.

์ดˆ์ฝœ๋ฆฟ์€ NuGet์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ? ์Šคํฌ๋ฆฝํŠธ ๋Œ€์‹  NUnit NuGet ํŒจํ‚ค์ง€ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ•ฉ๋ฆฌ์ ์ด์ง€ ์•Š์Šต๋‹ˆ๊นŒ? ๋ฉด์ฑ… ์กฐํ•ญ, ๋‚˜๋Š” Chocolatey์— ๋Œ€ํ•ด ๊ฑฐ์˜ ์•„๋Š” ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค. :๋ˆˆ์ง“:

์šฐ๋ฆฌ๊ฐ€ ์ดˆ์ฝœ๋ฆฟ์„ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ํ•˜๋Š” ์ผ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์—†๋‹ค๋ฉด ๊ทธ๊ฒƒ์€ ๋ชจ๋‘ ๋งค์šฐ ํ•™๋ฌธ์ ์ž…๋‹ˆ๋‹ค.

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

์ข‹์€ ์ ์€ ํœด๋Œ€์šฉ ๋ฒ„์ „์˜ ๋‚ด์šฉ์ด NUnit.Runners NuGet ํŒจํ‚ค์ง€๋ฅผ ๋ฐ˜์˜ํ–ˆ๋‹ค๋ฉด ์ข‹์•˜์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ถ”์ ํ•  ํ•ญ๋ชฉ์ด ์ค„์–ด๋“ญ๋‹ˆ๋‹ค!

์ด ์ดํ›„๋กœ ๋ช‡ ๊ฐ€์ง€ ์ž‘์€ ๋ฉ”๋ชจ๊ฐ€ 1๋…„ ์ด์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํœด๋Œ€์šฉ(bin ์„ค์น˜) ๋ฐ ์ „์ฒด NUnit ํŒจํ‚ค์ง€๋Š” ํŒจํ‚ค์ง€์— ํฌํ•จ๋œ .zip/.msi ๋˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•œ ์˜๊ตฌ URL์„ ์‚ฌ์šฉํ•˜์—ฌ Chocolatey์šฉ์œผ๋กœ ํŒจํ‚ค์ง€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” Github ๋ฆด๋ฆฌ์Šค URL์„ ์‚ฌ์šฉํ•˜์—ฌ ์ ์ ˆํ•œ ํŒจํ‚ค์ง€๋ฅผ ๋™์ ์œผ๋กœ ๋‹ค์šด๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค.

@CharliePoole ์—๊ฒŒ nunit ํŒจํ‚ค์ง€๊ฐ€ ๋ฉ”ํƒ€ํŒจํ‚ค์ง€์ธ ๊ฒฝ์šฐ Chocolatey๋Š” ์ž๋™์œผ๋กœ ์•„๋ฌด ๊ฒƒ๋„ ์—…๋ฐ์ดํŠธํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ํŒจํ‚ค์ง€๋ฅผ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ๋งน๋ชฉ์ ์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ packages.config ํŒŒ์ผ์„ ๋งŒ๋“ค๊ณ  ํŒจํ‚ค์ง€์˜ ํŠน์ • _versions_๊ฐ€ ์„ค์น˜๋˜๋„๋ก ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋œ NUnit์˜ ๋ชจ๋“  ๋ฒ„์ „์— ์˜์กดํ•  ์ˆ˜ ์žˆ๊ณ  ๊ฐœ๋ณ„ ๋ฒ„์ „์— ๋Œ€ํ•œ ํŠน์ • ํŒจํ‚ค์ง€๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋„๋ก ์—ฌ์ „ํžˆ NUnit ๋ฉ”ํƒ€ํŒจํ‚ค์ง€๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ apt-get/brew install nodejs๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ๋‹ค๋ฅด์ง€ ์•Š์œผ๋ฉฐ ํ•„์š”ํ•œ ํŠน์ • ๋ฒ„์ „์„ ์ง€์ •ํ•˜๋Š” ๋Œ€์‹  ์ตœ์‹  ๋ฒ„์ „์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

@DustinVenegas ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€์™€ ์ „์ฒด ํŒจํ‚ค์ง€๊ฐ€ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด์‹ ๊ฐ€๋Šฅํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ๋นŒ๋“œ๊ฐ€ ์žˆ์ง€๋งŒ ๋‹ค๋ฅธ ๋นŒ๋“œ์™€ ๋ณ„๋„๋กœ ํŒจํ‚ค์ง•๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Silverlight ๋ฐ ์ปดํŒฉํŠธ ํ”„๋ ˆ์ž„์›Œํฌ๋งŒ ๋ณ„๋„์˜ ํŒจํ‚ค์ง€๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋“ค์ด github URL์„ ์‚ฌ์šฉํ•˜์—ฌ ํŒจํ‚ค์ง€๋ฅผ ๊ฐ€์ ธ์™€์•ผ ํ•œ๋‹ค๋Š” ๋ฐ ํ™•์‹คํžˆ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์›น์‚ฌ์ดํŠธ ํŽ˜์ด์ง€๋Š” ํ•ญ์ƒ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๊ฐ€ ํ†ต์ œํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— "๊ทธ๋“ค"์ด๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋ฉ”ํƒ€ ํŒจํ‚ค์ง€๊ฐ€ ๊ฐˆ ๊ธธ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ ์ดˆ์ฝœ๋ฆฟ ํฌ์žฅ์„ ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์‹œ ์•ฝ๊ฐ„ ํ†ต์ œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์šฐ๋ฆฌ์˜ nuget NUnit.Console ํŒจํ‚ค์ง€๋ฅผ nuget์ด ์ง€์›ํ•˜๋Š” ํ•œ๊ณ„ ๋‚ด์—์„œ ๋ฉ”ํƒ€ํŒจํ‚ค์ง€์˜ ๊ทผ์‚ฌ์น˜๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ apt-get ์„ธ๊ณ„์—์„œ ๋ฉ”ํƒ€ํŒจํ‚ค์ง€์˜ ํž˜๊ณผ ๋‹ค๋ฅผ ๋ฐ”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

Chocolatey.org์˜ ์‚ฌ๋žŒ๋“ค๊ณผ ๋…๋ฆฝ์ ์œผ๋กœ ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋ฅผ ์ง์ ‘ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@CharliePoole - Chocolatey๋Š” ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ์—†๋Š” ํŒจํ‚ค์ง€๋ฅผ .NET ํœด๋Œ€์šฉ๊ณผ ๊ด€๋ จ์ด ์—†๋Š” ํœด๋Œ€์šฉ์œผ๋กœ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ nunit.portable ํŒจํ‚ค์ง€๋Š” msi์ธ nunit.install ์™€ ๋‹ฌ๋ฆฌ .zip NUnit ๋ฆด๋ฆฌ์Šค์ž…๋‹ˆ๋‹ค.

Chocolatey.org๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด ๊ณต๊ธ‰์—…์ฒด๊ฐ€ ์ž์ฒด ํŒจํ‚ค์ง€๋ฅผ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๊ธฐ๋ฅผ ์—ด๋งํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธฐ์กด ํŒจํ‚ค์ง€๋ฅผ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ๊ฒฝํ—˜์— ๋”ฐ๋ฅด๋ฉด ์˜ˆ์ƒ๋ณด๋‹ค ์›ํ™œํ•˜์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. #1716์ด ์™„์„ฑ๋œ ํ›„์— ์—ฐ๋ฝํ•  ๊ณ„ํš์ด์—ˆ๊ณ  ์ง€๊ธˆ์€ ๋‚ด๊ฐ€ ์ž๋ฆฌ๋ฅผ ๋น„์šด ํ›„์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋” ๋นจ๋ฆฌ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ธ์ˆ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :์›ƒ๋‹ค:

๋‹ค๋ฅธ ํŒจํ‚ค์ง€๊ฐ€ ๋ชจ๋“  ๋ฒ„์ „์˜ NUnit์— ์˜์กดํ•  ์ˆ˜ ์žˆ๋„๋ก ์—ฌ์ „ํžˆ NUnit ๋ฉ”ํƒ€ํŒจํ‚ค์ง€๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

@DustinVenegas - ์—ฌ๊ธฐ์„œ ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ๋ช…ํ™•ํžˆ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋ž˜ ๋งํฌ๋Š” ํ˜„์žฌ NUnit ๋ฉ”ํƒ€ ํŒจํ‚ค์ง€(์ดˆ์ฝœ๋ฆฟ ๋…€์„๋“ค์— ์˜ํ•ด)์ž…๋‹ˆ๋‹ค. ์ œ ๋ณด๊ธฐ์—๋Š” ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ํŒจํ‚ค์ง€์˜ ํŠน์ • ๋ฒ„์ „์„ ํ†ต๊ณผํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๊นŒ? ๋ฉ”ํƒ€ํŒจํ‚ค์ง€๊ฐ€ nunit.install ๊ฐ€ ์•„๋‹Œ "๋ชจ๋“  ๋ฒ„์ „์— ์ข…์†"๋˜๋„๋ก ํ—ˆ์šฉํ•˜๋Š” ์‹œ์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

https://github.com/dtgm/chocolatey-packages/blob/master/automatic/nunit/nunit.nuspec

๋‚˜๋„ ์ดˆ์ฝœ๋ฆฟ ์ „๋ฌธ๊ฐ€๋ผ๊ณ  ์ฃผ์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

@์ฐฐ๋ฆฌํ’€ ,
๊ท€ํ•˜๋Š” Chocolatey NUnit ํŒจํ‚ค์ง€ ์— ๋“ฑ๋ก๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. @dtgm ์€ ์ƒ๋‹นํ•œ ์ฑ…์ž„์ด ์žˆ์œผ๋ฉฐ PR์„ ์ˆ˜๋ฝํ•˜๊ฑฐ๋‚˜ ์ž๋™ ํŒจํ‚ค์ง€๋ฅผ ๋ชจ๋‘ ์ค‘์ง€ํ•˜๋„๋ก ์š”์ฒญํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ฆด๋ฆฌ์Šค ํ”„๋กœ์„ธ์Šค์— ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์นด๋ฅด๋‚™์„ ์œ„ํ•ด ๋น„์Šทํ•œ ์ผ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. "Contact Site Admins" ๋˜๋Š” Gitter ์ฑ„๋„๋„ ๋ฌผ์–ด๋ณผ ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ์žฅ์†Œ์ž…๋‹ˆ๋‹ค.

@ChrisMaddock ,
๋ฉ”ํƒ€ํŒจํ‚ค์ง€๊ฐ€ ์ง€๊ธˆ ํŠน๋ณ„ํ•œ ๊ฒƒ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๋‹ค. Chocolatey๋Š” nunit.portable _๋˜๋Š”_ nunit.install์ด nunit ์ข…์†์„ฑ์„ ์ถฉ์กฑํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” "๊ฐ€์ƒ ํŒจํ‚ค์ง€"๋ฅผ ์•„์ง ๋งˆ๋ฌด๋ฆฌ ์ค‘์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” Chocolatey๊ฐ€ ๋ฉ”ํƒ€ํŒจํ‚ค์ง€ ๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ๊ฒƒ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ด๋ฅผ ์ค€๋น„ํ•˜๋Š” ๋ฐ ๋”ฐ๋ผ์•ผ ํ•  ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•๋ก ์ž…๋‹ˆ๋‹ค.

์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋‹จ๊ณ„์ ์œผ๋กœ ์ค‘๋‹จ ํ•˜๋ ค๋Š” @dtgm ์— PR์„ ์ œ์ถœํ•˜๊ฑฐ๋‚˜ ์ง์ ‘ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ธ์ˆ˜ ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋ฉ”ํƒ€ํŒจํ‚ค์ง€ nunit ์—๋Š” v2 ๋ฐ v3์šฉ ๋ฆด๋ฆฌ์Šค๊ฐ€ ํฌํ•จ๋˜์–ด์•ผ ํ•˜๋ฉฐ ๋™์ผํ•œ ๋ฒ„์ „์˜ nunit.portable ํŒจํ‚ค์ง€์— ์ข…์†๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ตœ์ข… ์†Œ๋น„์ž๋Š” ๋นŒ๋“œ ์„œ๋ฒ„/๊ฐœ๋ฐœ ๊ธฐ๊ณ„์— ๋Œ€ํ•ด ์‰ฝ๊ฒŒ choco install nunit --version 2.x.x ์— ๋„๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋Š” <dependency name="nunit" version="3.x.x" /> ์— ์˜์กดํ•˜๊ฒŒ ๋˜๋ฉฐ ์ด๋Š” ํ–ฅํ›„ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด๋‚˜ ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€์— ์˜ํ•ด ์ˆ˜ํ–‰๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@DustinVenegas ์˜ˆ... ๋‚˜๋Š” ์ด๊ฒƒ์„ ์ธ์ˆ˜ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”

๋ถ„๋ช…ํžˆ ๋งํ•ด์„œ, ๋‚˜๋Š” ๊ธฐ๋ถ„์ด ์ƒํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ฆฌ๋ˆ…์Šค ์„ธ๊ณ„์—์„œ ํŒจํ‚ค์ €์™€ ์—…์ŠคํŠธ๋ฆผ ๊ฐœ๋ฐœ์ž ์‚ฌ์ด์— ๊ฝค ํ”ํ•œ ์ข…๋ฅ˜์˜ ๋ถˆ์ผ์น˜์ด๋ฏ€๋กœ ์—ฌ๊ธฐ์„œ ๊ทธ๊ฒƒ์„ ๋ณด๋Š” ๊ฒƒ์€ ๋†€๋ผ์šด ์ผ์ด ์•„๋‹™๋‹ˆ๋‹ค.

๋งŒ์•ฝ ์šฐ๋ฆฌ๊ฐ€ Chocolatey๋ฅผ ์œ„ํ•œ ๋Œ€์•ˆ ํŒจํ‚ค์ง€๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด, ๋‹ค์‹œ ๋…ผ์˜๋ฅผ ์‹œ์ž‘ํ•ด์•ผ ํ•  ๋•Œ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌํ•œ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•œ ๊ฐ€์ง€ ์š”์ ์€... NUnit 2์™€ 3์„ ๋ชจ๋‘ ํฌํ•จํ•˜๋Š” ๋ฉ”ํƒ€ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ค์ž๋Š” ์ œ์•ˆ์ด ์ž˜๋ชป๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. NUnit V2 ๋˜๋Š” NUnit V3 _๋‘˜ ์ค‘ ํ•˜๋‚˜์—์„œ_ ์ถฉ์กฑํ•  ์ˆ˜ ์žˆ๋Š” ์š”๊ตฌ ์‚ฌํ•ญ์ด ์ƒ๊ฐ๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ธํ„ฐํŽ˜์ด์Šค ์ˆ˜์ค€์—์„œ ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š” ์ œํ’ˆ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌํ•œ ๋ฉ”ํƒ€ํŒจํ‚ค์ง€์— ์˜์กดํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ์˜ˆ๋ฅผ ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@์ฐฐ๋ฆฌํ’€ ,

Chocolatey ๊ฐœ๋ฐœ์ž๋Š” ๋งค์šฐ ํ™˜์˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง•์„ ์™„์ „ํžˆ ์ œ์–ดํ•˜๋ ค๋ฉด Gitter์˜ @ferventcoder ์— ์—ฐ๋ฝํ•˜๊ฑฐ๋‚˜ ๊ด€๋ฆฌ์ž์—๊ฒŒ ๋ฌธ์˜ ๋งํฌ๊ฐ€ ๊ฐ€์žฅ

์ด์ œ ๋ฉ”ํƒ€ํŒจํ‚ค์ง€์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. Chocolatey ์ตœ์ข… ์‚ฌ์šฉ์ž๋กœ์„œ choco install package ์ด ํŒจํ‚ค์ง€์˜ ๊ฐ€์žฅ ์ตœ์‹  ๊ธฐ๋ณธ ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. ๋นŒ๋“œ ์„œ๋ฒ„์šฉ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ ์ตœ์‹  2.6 ๋ฆด๋ฆฌ์Šค๋ฅผ ์„ค์น˜ํ•˜๋Š” nunit-2.6.* ์— ์ข…์†๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ์ค‘์ด๋ผ๋ฉด nunit-3.2.* ๋˜๋Š” ๋” ๊ตฌ์ฒด์ ์ธ ๋ฒ„์ „์— ์˜์กดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฉ”ํƒ€ํŒจํ‚ค์ง€๋Š” (Nuget ํŒจํ‚ค์ง€)[https://www.nuget.org/packages/NUnit/]์™€ ๋ชจ์–‘๊ณผ ๊ธฐ๋Šฅ์ด ์™„์ „ํžˆ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ semver๋Š” ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํ‘œ์‹œํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. nunit.portable v2.0.2 _๋˜๋Š”_ nunit.install v2.0.2๊ฐ€ nunit v2.0.2 ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ผ ๋ฟ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ๋™์ผํ•œ ํŒจํ‚ค์ง€์˜ ์—ฌ๋Ÿฌ ๋‹ค๋ฅธ ๋ฒ„์ „์„ ๋™์‹œ์— ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ์ œ๊ฑฐํ•˜๋ ค๊ณ  ํ•˜๋ฏ€๋กœ ์ด๋™์‹(bin) ์„ค์น˜๋ฅผ nunit ํŒจํ‚ค์ง€์— ๊ฒŒ์‹œํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ถฉ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ํ˜„์žฌ ๋‚ด ๋ชจ๋“  ์ž๋™ํ™”๋Š” ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๊ธฐ๋ณธ ์„ค์ •๋˜๋Š” nunit 3.2.1์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ํฅ๋ฏธ๋กœ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@DustinVenegas ์ œ๊ฐ€ ๋งํ–ˆ๋“ฏ์ด ๊ทธ๋“ค์€ ์ €๋ฅผ ํ™˜์˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ๋“ค์ด ํฌ์žฅํ•˜๋ ค๋Š” ๊ฒƒ์— ๋™์˜ํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๋ฏธ ๋‹น์‹ ์ด ๋‚ด๊ฐ€ ์ด์•ผ๊ธฐํ•  ๊ฒƒ์„ ์ œ์•ˆํ•œ ๋ฐ”๋กœ ๊ทธ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์ ‘์ด‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๊ทธ๋“ค์ด ํ•˜๋Š” ์ผ์„ ๋ฐ”๊พธ๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์„ ๋ถ„๋ช…ํžˆ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚ด๊ฐ€ ๋‹น์‹ ์—๊ฒŒ ๊ทธ๋“ค์˜ ๊ฐœ์ž… ์—†์ด ์ดˆ์ฝœ๋ฆฟ ํ˜•ํƒœ์˜ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ์ง€ ๋ฌผ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ๊ณผ ๋‚ด๊ฐ€ ์ดˆ์ฝœ๋ฆฟ์„ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค๊ณผ ์‰ฝ๊ฒŒ ์ผํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•˜์ง€ ์•Š๋Š” ๋ฐ ๋™์˜ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”ํƒ€ํŒจํ‚ค์ง€์™€ ๊ด€๋ จํ•˜์—ฌ "nunit์— ๋Œ€ํ•œ ์ข…์†์„ฑ ๊ฐ€์ ธ์˜ค๊ธฐ"๊ฐ€ ์˜๋ฏธํ•˜๋Š” ๋ฐ”์— ๋”ฐ๋ผ ํ•ฉ๋ฆฌ์ ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. v2์™€ v3 ์‚ฌ์ด์—๋Š” ๊ณตํ†ต๋œ ์–ด์…ˆ๋ธ”๋ฆฌ ์ด๋ฆ„์ด ํ•˜๋‚˜๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋“ค์€ ๋‹จ์ง€ ๋‚ด ์ถฉ๊ณ ๋ฅผ ๋ฐ›์•„๋“ค์ด๊ธฐ๋ฅผ ์›ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‚ด ์ด๋ฆ„์„ ๊ฑฐ๊ธฐ์— ๋‘๋Š” ๊ฒƒ์€ ์ˆœ์ „ํžˆ ์˜์˜ˆ๋กœ์šด ์ผ์ด์—ˆ์Šต๋‹ˆ๋‹ค. :-)

@CharliePoole์€ ์‹ค์ œ๋กœ ๊ท€ํ•˜๊ฐ€ ํŒจํ‚ค์ง€ ์ถœ์‹œ๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ๋ฅผ ํฌ๋งํ•˜์—ฌ ๊ท€ํ•˜๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ์›๋ณธ ๋Œ€ํ™”์ž…๋‹ˆ๋‹ค - https://chocolatey.org/packages/nunit#comment -1840892100. ์•ฝ 1๋…„ ์ „์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๋‹น์‹œ์—๋Š” NUnit ์‚ฌ๋žŒ๋“ค์ด ์‹ค์ œ๋กœ ํŒจํ‚ค์ง€๋ฅผ ๋ฆด๋ฆฌ์Šคํ•˜๊ฑฐ๋‚˜ @dtgm ์— ์ž๋™ ํŒจํ‚ค์ง•์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฒ„์ „ ๋ฆด๋ฆฌ์Šค๋ฅผ ์ค‘์ง€ํ•˜๋„๋ก ์š”์ฒญํ•˜๋Š”

์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ํŒจํ‚ค์ง€ ๋ฆด๋ฆฌ์Šค๋ฅผ ๊ณ„์† ์ง„ํ–‰ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์™„์ „ํžˆ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๋ฅผ ๋งค์šฐ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ NuGet๊ณผ Chocolatey์˜ ์ฐจ์ด์ ์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ์žˆ์–ด ์•ฝ๊ฐ„ ๊ณผ๋„ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ NUnit.Runners๋ฅผ Chocolatey ํŒจํ‚ค์ง€๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. choco install nunit.runners --source https://www.nuget.org/api/v2/ . Chocolatey๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋” ๋งŽ์€ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ ํŒจํ‚ค์ง€ ์ž์ฒด์— ๋Ÿฐํƒ€์ž„ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฒƒ๋งŒ ํผ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด ๊ณต๊ธ‰์—…์ฒด๊ฐ€ ์•„๋‹Œ ์‚ฌ๋žŒ๋“ค์€ ์†Œํ”„ํŠธ์›จ์–ด์— ๋Œ€ํ•œ ๋ฐฐํฌ ๊ถŒํ•œ์ด ์—†์œผ๋ฉฐ ์›๊ฒฉ ์œ„์น˜์—์„œ ๋‹ค์šด๋กœ๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ๊ทธ ๋ช…๋ น์˜ ์ถœ๋ ฅ :
image

๊ทธ๋“ค์€ ๊ทธ๋“ค์ด ํ•˜๋Š” ์ผ์„ ๋ฐ”๊พธ๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์„ ๋ถ„๋ช…ํžˆ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚ด๊ฐ€ ๋‹น์‹ ์—๊ฒŒ ๊ทธ๋“ค์˜ ๊ฐœ์ž… ์—†์ด ์ดˆ์ฝœ๋ฆฟ ํ˜•ํƒœ์˜ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ์ง€ ๋ฌผ์—ˆ์Šต๋‹ˆ๋‹ค.

@CharliePoole ํ˜„์žฌ ํŒจํ‚ค์ง€ ๋งํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ „๋‹ฌ๋œ ๋‚ด์šฉ์— ๋Œ€ํ•œ ์ž˜๋ชป๋œ ์˜์‚ฌ์†Œํ†ต ๋˜๋Š” ์˜คํ•ด์ธ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์ˆ˜ํ–‰๋˜๊ณ  ์žˆ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฑด์ „ํ•œ ๋Œ€ํ™”๋ฅผ ๋ณด์•˜๊ณ  v3์— ๋Œ€ํ•ด ์–ด๋–ป๊ฒŒ ์ ‘๊ทผํ•  ๊ฒƒ์ธ์ง€์— ๋Œ€ํ•œ ์งˆ๋ฌธ์„ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. - https://chocolatey.org/packages /nunit#comment -2120088484.

3.0๊ณผ ๊ด€๋ จํ•˜์—ฌ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ๋“ฑ๋ก๋œ ์ด๋ฆ„์„ 2.x ์‹œ๋ฆฌ์ฆˆ์™€ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3.0์ด ๋™์ผํ•œ ํŒจํ‚ค์ง€ ์ด๋ฆ„์œผ๋กœ ๋ฆด๋ฆฌ์Šค๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋‘ ํŒจํ‚ค์ง€๊ฐ€ ๊ณตํ†ต ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ด๋ฆ„์„ ๊ณต์œ ํ•ด์„œ๋Š” ์•ˆ ๋˜๋ฏ€๋กœ ์„ค์น˜/์ œ๊ฑฐ ์ค‘์— ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ด์ „ ๋ฒ„์ „์˜ nunit์„ ์„ค์น˜ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ํ•ญ์ƒ '-๋ฒ„์ „ 2.6.4'๋ฅผ ์ง€์ •ํ•˜๊ณ  '์ดˆ์ฝ” ๊ณ ์ •'ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์„ ๋ณ„๋„์˜ ํŒจํ‚ค์ง€๋กœ v3๋ฅผ ๋ฆด๋ฆฌ์Šคํ•˜๊ฑฐ๋‚˜(์ด์ „์— ์ฃผ์„์—์„œ ๋ฌด์—‡์„ ํ•˜๊ณ  ์‹ถ์€์ง€๋ฅผ ๋ช…์‹œํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—) ํ˜„์žฌ "nunit"์—์„œ v3๊ฐ€ ๋ฐœ์ƒํ•˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ œ์•ˆ์œผ๋กœ ์ฝ์—ˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ๋ฐ ๊ท€ํ•˜๊ฐ€ ๊ฒฐ์ •์„ ๋‚ด๋ฆฌ์ง€ ์•Š์€ ๊ฒฝ์šฐ ์–ด๋–ค ์ผ์ด ๋ฐœ์ƒํ•˜๋Š”์ง€.

๋‚˜๋Š” ๋˜ํ•œ ๊ทธ ๋Œ€ํ™”๋งŒ ๊ณ„์†ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ˜„์žฌ ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ ์ƒํ™ฉ์ด ๋ฐ”๋€Œ๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์ด ๋‚˜์ค‘์— ๋ถ„๋ช…ํžˆ ๋ฐํ˜€์ง„ ๋‹ค๋ฅธ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ด ์žˆ์—ˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•Œ๋ ค์ฃผ์„ธ์š”?

์ฐธ๊ณ ๋กœ ์ €๋Š” ์ž ์‹œ ์ž๋ฆฌ๋ฅผ ๋น„์› ๊ธฐ ๋•Œ๋ฌธ์— ํ• ๋‹น์„ ํ•ด์ œํ–ˆ๊ณ  ์ด๊ฒƒ์ด ์›€์ง์ด๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ญ”๊ฐ€ ํ•ด๊ฒฐ๋  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค! :์›ƒ๋‹ค:

@ChrisMaddock ์‹ค์ œ๋กœ ์ด๊ฒƒ์„ ์ฐจ๋‹จ๋œ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” ๋‚ด๊ฐ€ 1๋…„ ์ „์˜ ํ† ๋ก ์—์„œ ๋‚ด ๊ธฐ์–ต์„ ์ƒˆ๋กœ ๊ณ ์ณค๊ณ  Chocolatey ์„ค์น˜๋Š” ํ•ญ์ƒ ์šฐ๋ฆฌ ์„ค์น˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋ฌด์—‡์„ ํŒจํ‚ค์ง•ํ•˜๊ณ  ์ถœ์‹œํ• ์ง€๋ฅผ ํ™•์‹คํžˆ ๊ฒฐ์ •ํ•  ๋•Œ๊นŒ์ง€ ํŒจํ‚ค์ง€ ํ˜•์‹์„ ํ™•์‚ฐํ•ด์„œ๋Š” ์•ˆ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€ ์„ธ๋ถ„์„ฑ์— ๋Œ€ํ•œ ๊ฒฐ์ •์€ 3.0 ๋ฆด๋ฆฌ์Šค ์ดํ›„ ๊ณต๊ฐœ๋˜์—ˆ์œผ๋ฉฐ ์ฝ˜์†”/์—”์ง„์—์„œ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋ถ„ํ• ํ•˜์—ฌ ๋งŽ์€ ํฐ ๋ณ€ํ™”๋ฅผ ์ผ์œผํ‚ค๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ํŒจํ‚ค์ง€๋ฅผ ์ดˆ์ฝœ๋ฆฟ์— ๋‹ด์„ ๊ฒƒ์ธ์ง€ ๊ฒฐ์ •ํ•˜๊ธฐ ์ „์— ์–ด๋–ค ํŒจํ‚ค์ง€๋ฅผ ์ถœ์‹œํ• ์ง€ ๋ชฉ๋ก์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์‹ค, 1๋…„ ์ „์˜ ๋…ผ์˜๋Š” ์ฃผ๋กœ ์šฐ๋ฆฌ๊ฐ€ ์ค‘๋‹จํ•  ๊ณ„ํš์ด์—ˆ๊ณ  ์‚ฌ์‹ค์ƒ ์ค‘๋‹จํ•œ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์ดˆ์ฝœ๋ฆฟ ๋ฆด๋ฆฌ์Šค๋ฅผ ์›ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์— ๊ด€ํ•œ ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด์„œ๋Š” ๋ณ„๋„๋กœ ์–ธ๊ธ‰ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@DustinVenegas ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์กฐ๊ฐ == ํ•˜๋‚˜์˜ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋ณด๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฒ„์ „์€ ํŒจํ‚ค์ง€์˜ ๊ด€์‹ฌ์‚ฌ๋กœ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ๋ชจ๋“  ๋ชจ์–‘๊ณผ ํฌ๊ธฐ๋กœ ์ œ๊ณต๋˜๊ณ  ๋‹ค์–‘ํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ํ—ˆ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํŒจํ‚ค์ง•์€ "๋ชจ๋“  ์ ‘๊ทผ ๋ฐฉ์‹์— ๋งž๋Š” ํ•˜๋‚˜์˜ ํฌ๊ธฐ"๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

.NET Framework 2.x ๋Œ€ .NET Framework 4.x ๋˜๋Š” ์—ฌ๋Ÿฌ ๋ฒ„์ „์˜ Ruby์™€ ๊ฐ™์ด ๋™์‹œ์— ์—ฌ๋Ÿฌ ๋ฒ„์ „์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋Š” ์†Œํ”„ํŠธ์›จ์–ด์˜ ๊ฒฝ์šฐ ํ•ด๋‹น ํ•ญ๋ชฉ์— ๋Œ€ํ•ด ์—ฌ๋Ÿฌ ํŒจํ‚ค์ง€ ์ด๋ฆ„์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. NUnit v3๊ฐ€ NUnit v2(๋˜๋Š” ๊ฐ๊ฐ์˜ ์—ฌ๋Ÿฌ ๋ฒ„์ „)์™€ ๋™์‹œ์— ์‹œ์Šคํ…œ์— ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ํŒจํ‚ค์ง•์— ๋Œ€ํ•œ ์—ฌ๋Ÿฌ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋™์ผํ•œ ํŒจํ‚ค์ง€ ID์˜ ์—ฌ๋Ÿฌ ๋ฒ„์ „์— ๋Œ€ํ•ด ๋ณ‘๋ ฌ ์„ค์น˜๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜๊ฑฐ๋‚˜, ๋˜๋Š” ๋‹ค๋ฅธ ํŒจํ‚ค์ง€ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋‹ค๋ฅธ ํŒจํ‚ค์ง€ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ธ์ง€ ์—ฌ๋ถ€๋ฅผ ๋งํ•˜๊ธฐ๋Š” ์ •๋ง ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

Puppet ๋ฐ Puppet-Agent ํŒจํ‚ค์ง€ - ๋™์ผํ•œ ์†Œํ”„ํŠธ์›จ์–ด, ๋‹ค๋ฅธ ํŒจํ‚ค์ง€

๊ณ ๋ คํ•ด์•ผ ํ•  ๊ฒฝ์šฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ผญ๋‘๊ฐ์‹œ ๋Œ€ ๊ผญ๋‘๊ฐ์‹œ ์—์ด์ „ํŠธ. ๋˜๋Š” v3๊นŒ์ง€์˜ Puppet ๋ฐ 4.x+์˜ Puppet์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค. Puppet ํŒ€์€ ์˜ด๋‹ˆ๋ฒ„์Šค ์ ‘๊ทผ ๋ฐฉ์‹(๋ฃจ๋น„์™€ ๋ชจ๋“  ๋„๊ตฌ๋ฅผ ํŒจํ‚ค์ง€์— ๋ฒˆ๋“ค)์œผ๋กœ ์ „ํ™˜ํ•จ์— ๋”ฐ๋ผ Puppet-Agent(v4+)์šฉ ์ƒˆ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ค๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ Windows์˜ Puppet์— ๋Œ€ํ•ด ์ด๋ฏธ ์ˆ˜ํ–‰๋˜๊ณ  ์žˆ์—ˆ์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ๋ชจ๋“  OS ํ”Œ๋žซํผ์—์„œ ํŒจํ‚ค์ง€ ์ด๋ฆ„๊ณผ ํŒจ๋ฆฌํ‹ฐ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ๋ฅผ ์›ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— Chocolatey๋Š” ๋‹ค๋ฅธ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž์— ๋Œ€ํ•ด ์ˆ˜ํ–‰๋œ ์ž‘์—…์„ ๋”ฐ๋ž์Šต๋‹ˆ๋‹ค.

Ruby - ๋ชจ๋“  ๋ฒ„์ „์— ๋Œ€ํ•ด ๋™์ผํ•œ ํŒจํ‚ค์ง€, ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ ์ฃผ์š”์— ๋Œ€ํ•œ ํŒจํ‚ค์ง€

๊ณ ๋ คํ•ด์•ผ ํ•  ๋˜ ๋‹ค๋ฅธ ๊ฒฝ์šฐ:

ruby ํŒจํ‚ค์ง€๋Š” ํ˜„์žฌ ๋ชจ๋“  ๊ฒƒ์„ ํ•จ๊ป˜ ๋ฌถ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ฃผ์š” ๋ฒ„์ „(1.9.x, 2.0.0, 2.1.x, 2.3.x ๋“ฑ)๋ณ„๋กœ Ruby ํŒจํ‚ค์ง€๋ฅผ ์ƒ์„ฑํ•˜์—ฌ Ruby๋ฅผ ์„ค์น˜ํ•  ๋•Œ ๋” ๋งŽ์€ ์„ ํƒ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์ƒ๊ฐํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋˜ํ•œ ๋‹ค๋ฅธ OS ํ”Œ๋žซํผ์—์„œ Ruby์— ๋Œ€ํ•œ ํŒจํ‚ค์ง•์ด ์ˆ˜ํ–‰๋˜๋Š” ๋ฐฉ์‹๊ณผ ๋™๋“ฑํ•ฉ๋‹ˆ๋‹ค.

์ด ์ค‘ ํ•˜๋‚˜(๋˜๋Š” ๋‹ค๋ฅธ ๊ฒƒ)๋Š” ์—ฌ๋Ÿฌ๋ถ„์ด ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์— ๋Œ€ํ•œ ๊ณ ๋ ค ์‚ฌํ•ญ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :)

์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค

๋‚ด๊ฐ€ ๋งํ•˜๋ ค๋Š” ๊ฒƒ์€ ๋‹น์‹ ์—๊ฒŒ ์„ ํƒ๊ถŒ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ํ˜„์ƒ ์œ ์ง€๋ฅผ ์„ค๋ช…ํ•  ๋•Œ, ๋˜๋Š” ํ•œ ์‚ฌ๋žŒ์ด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋งํ•  ๋•Œ(๋‚˜์ผ์ง€๋ผ๋„), ๊ทธ๊ฒƒ์„ ์ดˆ์ฝœ๋ฆฟ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Chocolatey ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ๋Š” ์ƒํ™ฉ์ด ์œ ๋™์ ์ด๊ณ  ๋น ๋ฅด๋ฉฐ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@ferventcoder ์•ˆ๋…•ํ•˜์„ธ์š” Rob! ๋‚˜๋Š” ๋‹น์‹ ์ด ๋‹น์‹ ์˜ ์ด๋ฆ„์„ "๋“ค์—ˆ"๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. :-)

๋งˆ์ง€๋ง‰ ๊ฒŒ์‹œ๋ฌผ ์ดํ›„๋กœ ์ €๋Š” ์•ฝ ์„ธ ๊ณณ์—์„œ ์žˆ์—ˆ๋˜ ๋ชจ๋“  ํ† ๋ก ์„ ๊ฒ€ํ† ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜์˜ ๋ˆˆ์œผ๋กœ ๊ทธ๋“ค์„ ๋ฐ”๋ผ๋ณด๋ฉฐ ๋‚˜๋Š” ๋ช‡ ๊ฐ€์ง€๋ฅผ ๊นจ๋‹ฌ์•˜๋‹ค. . .

  1. ๋‚ด๊ฐ€ ์ด์•ผ๊ธฐํ–ˆ๋˜ ์‚ฌ๋žŒ๋“ค์€ ๋ชจ๋‘ "์ดˆ์ฝœ๋ฆฟ ๋‚จ์ž"๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋“ค ์ค‘ ์ผ๋ถ€๋Š” ์‹ค์ œ๋กœ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ์—ฌ์ž์ž…๋‹ˆ๋‹ค. ๋‹น์‹œ์—๋Š” ์ด๊ฒƒ์ด ๋ช…ํ™•ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํŠนํžˆ 900๊ฐœ๊ฐ€ ๋„˜๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์ž๋™์œผ๋กœ ์ถœ์‹œ๋œ ์นœ๊ตฌ๊ฐ€ ์ดˆ์ฝœ๋ฆฟ ํ”„๋กœ์ ํŠธ์˜ ์ผ๋ถ€๋ผ๋Š” ์ธ์ƒ์„ ๋ฐ›์•„ ๊ณ„์† ํ•˜๊ณ  ์‹ถ์€ ๊ทธ์˜ ๋ฐ”๋žŒ์„ ์ดˆ์ฝœ๋ฆฟ ๋•Œ๋ฌธ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌํ•˜ํŠผ, ๋‹ค์‹œ ์ฝ์œผ๋ฉด ๋ฐฉ๊ธˆ ํด๋ฆญํ–ˆ์Šต๋‹ˆ๋‹ค... ์ดˆ์ฝœ๋ฆฟ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ ์‚ฌ๋žŒ๋“ค์ด ์ž‘์„ฑ์ž๊ฐ€ ์•„๋‹Œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ๋ฆด๋ฆฌ์Šค๋ฅผ ํŒจํ‚ค์ง€ํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค! ๊ทธ๊ฒƒ์€ ์•„๋งˆ๋„ ๋‹น์‹ ์˜ ๊ด€์ ์—์„œ ๋ณผ ๋•Œ ๋ถ„๋ช…ํ•˜์ง€๋งŒ ์ดํ•ดํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.
  2. ๊ณต๊ฐœ ํ† ๋ก ์— ์žˆ๋Š”์ง€ ์•„๋‹ˆ๋ฉด ๋ณ„๋„์˜ ์ด๋ฉ”์ผ์— ์žˆ๋Š”์ง€ ๊ธฐ์–ต์ด ๋‚˜์ง€ ์•Š์ง€๋งŒ ์œ ์ง€ ๊ด€๋ฆฌ์ž์™€ ํ†ต์‹ ํ•˜๋ฉด์„œ ๋‚ด๊ฐ€ ์ธ์ˆ˜ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•˜๋Š” NUnit 3์šฉ ์ž๋™ NUnit ๋นŒ๋“œ๋ฅผ ๊ณ„์† ๋ฆด๋ฆฌ์Šคํ•  ์˜ํ–ฅ์ด ์žˆ๋Š”์ง€ ๋ฌผ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Š” ์ž์‹ ์˜ ๊ฐœ์ธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— PR์„ ์ œ์ถœํ•˜๋„๋ก ๋‚˜๋ฅผ ์ดˆ๋Œ€ํ–ˆ์ง€๋งŒ ๊ทธ๋ ‡๊ฒŒ ํ–ˆ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ์‹์œผ๋กœ ๋‚˜๋ฅผ ์œ„ํ•ด ๋ฌธ์ œ๋ฅผ ๋‹ซ์•˜์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๊ทธ๋ฅผ ๋‹น์‹œ ์ดˆ์ฝœ๋ฆฟ ๊ธฐ๋ฐ˜ ์‹œ์„ค์˜ ์ผ๋ถ€๋กœ ๋ณด๊ณ  ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€๋ถ„์ ์œผ๋กœ๋Š” ์ตœ์ข…์ ์ธ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์˜€์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ฃผ๋กœ ๋‚˜๋Š” ๊ทธ๊ฐ€ ์ข‹๋“  ์‹ซ๋“  ์šฐ๋ฆฌ ๋ผ์ด์„ ์Šค ์กฐ๊ฑด ๋‚ด์—์„œ ์ž์‹ ์˜ NUnit ํŒจํ‚ค์ง€๋ฅผ ๋ฆด๋ฆฌ์Šคํ•  ๊ถŒ๋ฆฌ๊ฐ€ ์žˆ๋‹ค๊ณ  ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค.
  3. ์šฐ๋ฆฌ๋Š” NUnit 3์˜ 1์ผ์งธ๋ถ€ํ„ฐ "๋งˆ์Šคํ„ฐ" nunit msi์˜ ๋‚ ์งœ๊ฐ€ ์ง€์ •๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด ๊ณ„์† ์œ ์ง€ํ•˜๊ณ  ์žˆ์—ˆ๊ณ  ์†”์งํžˆ ๋งํ•ด์„œ ์ด๋ฏธ ๋„ˆ๋ฌด ์˜ค๋ž˜ ์œ ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์—†์–ด์กŒ์–ด. NUnit์˜ ๋‹ค์Œ ๋ฒ„์ „์— ๋Œ€ํ•œ msi๊ฐ€ ์žˆ์ง€๋งŒ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์ด ์„ค๋ช…ํ•ด์•ผ ํ•  ๊ฒƒ์ด์ง€๋งŒ ์ด๊ฒƒ์ด ์ดˆ์ฝœ๋ฆฟ ์‚ฌ์šฉ์ž์—๊ฒŒ ํฐ ์†์‹ค์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๊ธฐ ๋•Œ๋ฌธ์— nuget์„ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ณ„๋กœ ํ”„๋กœ์ ํŠธ๋ณ„๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
  4. ๋‹น์‹œ, ๊ทธ๋ฆฌ๊ณ  ํ˜„์žฌ๊นŒ์ง€ ๊ณ„์†ํ•ด์„œ ์ปค๋ฎค๋‹ˆํ‹ฐ ์‚ฌ์ดํŠธ์—๋Š” ๋ฆด๋ฆฌ์Šค๋ฅผ ํ†ตํ•ด ๊ตฌ๋ณ„๋˜๋Š” NUnit์šฉ ํŒจํ‚ค์ง€๊ฐ€ ํ•˜๋‚˜๋งŒ ํฌํ•จ๋˜์–ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์•„์‹œ๋‹ค์‹œํ”ผ, ์šฐ๋ฆฌ๋Š” NUnit 3๋ฅผ NUnit 2์™€ ๋ณ„๋„์˜ ํŒจํ‚ค์ง€๋กœ ์ทจ๊ธ‰ํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹จ, ํ”„๋ ˆ์ž„์›Œํฌ์— ๋Œ€ํ•œ ์˜ˆ์™ธ๋Š” ์˜ˆ์™ธ์ž…๋‹ˆ๋‹ค. ๋‘ ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์„ ํ•˜๋‚˜์˜ ํŒจํ‚ค์ง€๋กœ ์ทจ๊ธ‰ํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ๋ฉด์ ์œผ๋กœ๋Š” ํŽธ๋ฆฌํ•ด ๋ณด์ด์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ๋•Œ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ํ˜ผ๋ž€์„ ์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ณ„๋„์˜ NUnit 3 ํŒจํ‚ค์ง€๋กœ ์ธ์ˆ˜๋ฅผ ์ œ์•ˆํ–ˆ์ง€๋งŒ ๊ทธ ์ œ์•ˆ์€ ๊ฑฐ์ ˆ๋œ ๊ฒƒ ๊ฐ™์•˜๋‹ค. ๊ธ€๊ณผ ์ด๋ฉ”์ผ์„ ๋‹ค์‹œ ์ฝ์–ด๋ณด๋‹ˆ ์ดํ•ด๊ฐ€ ์ž˜ ์•ˆ ๋œ ๋ถ€๋ถ„์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  5. ๋‚˜๋Š” ๋‹น์‹ ๊ณผ ํ˜„์žฌ ๊ด€๋ฆฌ์ž ๋ชจ๋‘ ๊ทธ 1๋…„ ๊ฐ„์˜ ํ† ๋ก ์—์„œ ์ €๋ฅผ ์ž˜ ๋Œ€ํ•ด์ฃผ์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ๋‹ค์‹œ ๊ฐ•์กฐํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์•ฝ๊ฐ„ ์˜น์•Œ์ด๋ฅผ ํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค๋ฉด ๋‚ด๊ฐ€ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๋Œ“๊ธ€ ์ž‘์„ฑ์ž์—๊ฒŒ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๋ก ์€... ๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ NUnit 3์— ๋Œ€ํ•œ ์ดˆ์ฝœ๋ฆฟ ์„ค์น˜๋ฅผ ์œ ์ง€ํ•˜๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์œ ์ง€ ๊ด€๋ฆฌ์ž์—๊ฒŒ NUnit 3์™€ NUnit 2๋ฅผ ํ•  ๊ณ„ํš์ด ์žˆ๋Š”์ง€ ๋ฌผ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Š” ์˜ˆ๋ผ๊ณ  ๋Œ€๋‹ตํ–ˆ๊ณ  ์ €๋Š” ์ถฉ๋Œ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๋ฌผ๋Ÿฌ๋‚ฌ์Šต๋‹ˆ๋‹ค.

์•„์ด๋Ÿฌ๋‹ˆํ•˜๊ฒŒ๋„ @ChrisMaddock ๊ณผ @DustinVenegas ๊ฐ€ ์ด์— ๋Œ€ํ•ด ์ ๊ทน์ ์œผ๋กœ ๋…ผํ‰ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์„ ๋•Œ ์ €๋Š” ์‹ค์ œ๋กœ ์ด ๋ฌธ์ œ๋ฅผ ์ •๋ฆฌ์˜ ์ผ๋ถ€๋กœ ์‚ญ์ œํ•  ์ค€๋น„๊ฐ€ ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‚ด๋ถ€์ ์œผ๋กœ ์ƒ์„ฑ๋œ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ choco ์„ค์น˜๋ฅผ ์š”์ฒญํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. OTOH, ๋‚˜๋Š” ๋„๊ตฌ์— ์ดˆ์ฝœ๋ฆฟ์„ ์‚ฌ์šฉํ•˜๊ณ  msis๋ฅผ ์™„์ „ํžˆ ์‚ญ์ œํ•˜๋Š” ์•„์ด๋””์–ด๋ฅผ ์ข‹์•„ํ•˜๋ฏ€๋กœ ์ž ์‹œ ๋™์•ˆ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ ๋‹ค๋ฅธ ์˜๊ฒฌ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค... ๋”ฐ๋กœ ๋‹ต์žฅ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

@ferventcoder ํŒจํ‚ค์ง€ ๋Œ€ ์†Œํ”„ํŠธ์›จ์–ด...

์˜ต์…˜์ด ๋ณด์ด๋‹ˆ ๋‹คํ–‰์ž…๋‹ˆ๋‹ค. :-)

๋™์ผํ•œ ํŒจํ‚ค์ง€์˜ ๋‘ ๊ฐ€์ง€ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋‘ ํŒจํ‚ค์ง€ ๋ชจ๋‘์—์„œ ๋™์ผํ•œ ์ „์ฒด ๊ธฐ๋Šฅ์„ ์–ป๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํ•ญ์ƒ ์ž˜ํ•˜์ง€๋Š” ์•Š์•˜์ง€๋งŒ ๊ฐœ์„ ๋˜์—ˆ์œผ๋ฉด ํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ ๋‚ด ๋ง์€ ...

NUnit V2์—๋Š” ๋‹ค์Œ์„ ํฌํ•จํ•˜๋Š” msi๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • nunit ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์ตœ์‹  ๋ฒ„์ „
  • NUnit ์ฝ˜์†” ๋Ÿฌ๋„ˆ
  • NUnit GUI ๋Ÿฌ๋„ˆ
  • ํ”„๋กœ์„ธ์Šค ์™ธ๋ถ€์—์„œ ์‚ฌ์šฉ๋œ NUnit ์—์ด์ „ํŠธ
  • ๋‘ ๋Ÿฌ๋„ˆ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๋Š”

  • ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ํ…Œ์ŠคํŠธ ์ž‘์„ฑ
  • ์ฝ˜์†” ๋Ÿฌ๋„ˆ์—์„œ ํ…Œ์ŠคํŠธ ์‹คํ–‰
  • GUI ๋Ÿฌ๋„ˆ์—์„œ ํ…Œ์ŠคํŠธ ์‹คํ–‰

NUnit V3์—๋Š” ๋‹ค์Œ์„ ํฌํ•จํ•˜๋Š” msi๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • NUnit ์ฝ˜์†” ๋Ÿฌ๋„ˆ
  • NUnit ์—”์ง„(์—์ด์ „ํŠธ ํฌํ•จ)

์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๋Š”

  • ์ฝ˜์†” ๋Ÿฌ๋„ˆ์—์„œ ํ…Œ์ŠคํŠธ ์‹คํ–‰
  • ์—”์ง„์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์œผ๋กœ ํ…Œ์ŠคํŠธ ์‹คํ–‰

ํŒจํ‚ค์ง€ ์ด๋ฆ„์€ ํ•˜๋‚˜์ง€๋งŒ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ƒˆ ๋ฒ„์ „์—์„œ๋Š” ๋” ์ด์ƒ ์ผ๋ถ€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์ง€๋งŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ์ž‘์—…์€ ์žˆ๋‹ค๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์€ ๋‹ค์†Œ ์–ด๋ ค์šด ๊ฒƒ์œผ๋กœ ํŒ๋ช…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ผ์„ํ•ด์•ผํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๊ฒฝ์šฐ์— - ๋‚˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์šฐ๋ฆฌ๊ฐ€ ์ผ์„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค ํ•  ๋•Œ ๋„ˆ๋ฌด ๋งŽ์€ ๋งˆ์Œ์„ ์ง€๋ถˆํ•˜์ง€์— ๋Œ€ํ•œ ์˜๊ฒฌ์„ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ถˆํ–‰ํžˆ๋„ ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋ฐ˜๋Œ€๋กœ ์ ์šฉํ•˜๊ณ  ์žˆ์—ˆ๊ณ  ํฌ์žฅ์—…์ž๊ฐ€ ๋‚ด ์˜๊ฒฌ์— ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ด๊ฒŒ ํ•  ๋ฐฉ๋ฒ•์ด ์—†๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. :-(

์šฐ๋ฆฌ๊ฐ€ ์ƒ์‚ฐํ•  ๊ณ„ํš์ด ์žˆ๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‹ค์ œ๋กœ ํ™•์ •ํ•  ๋•Œ๊นŒ์ง€ ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์„œ๋Š” ์•ˆ ๋œ๋‹ค๋Š” ์ด์ „ ์ง„์ˆ ์— ๋™์˜ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์šฐ๋ฆฌ๊ฐ€ ์ƒ์‚ฐํ•  ๊ณ„ํš์ด ์žˆ๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‹ค์ œ๋กœ ํ™•์ •ํ•  ๋•Œ๊นŒ์ง€ ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์„œ๋Š” ์•ˆ ๋œ๋‹ค๋Š” ์ด์ „ ์ง„์ˆ ์— ๋™์˜ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ณ„ํš ์—†์ด๋Š” ์•ž์œผ๋กœ ๋‚˜์•„๊ฐˆ ๊ธธ์„ ์•Œ๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๐Ÿ‘

์šฐ๋ฆฌ๋Š” ํ˜‘์—… ํ”„๋กœ์„ธ์Šค๋กœ ์ด์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๊ณ , ๋Œ€๋ถ€๋ถ„ ์†์„ ๋†“๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ์›ํ•˜๋Š” ์ž‘์—…์— ์ ํ•ฉํ•œ์ง€ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ๊ถ๊ทน์ ์œผ๋กœ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ํŒจํ‚ค์ง€๋ฅผ ์ œ์ถœํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ฑฐ๊ธฐ์—์„œ ๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ์ถ”์ฒœ์€ ์ฒ˜์Œ ๋‘ ๊ฐ€์ง€ ์ ‘๊ทผ ๋ฐฉ์‹ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€์™€ ๊ด€๋ จํ•˜์—ฌ ์—ฌ๊ธฐ์—์„œ ๋ฌด์—‡์„ ํ•˜๊ณ  ์‹ถ์€์ง€ ๊ฐ€์žฅ ์ž˜ ์•Œ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ•˜๋‚˜์˜ ์ข…์†์„ฑ ์š”๊ตฌ ์‚ฌํ•ญ - ์ดˆ์ฝœ๋ฆฟ ํ”„๋ ˆ์ž„์›Œํฌ

ํŒจํ‚ค์ง•๊ณผ ๊ด€๋ จํ•˜์—ฌ ํ˜„์žฌ ํ™•๊ณ ํ•œ ํ•œ ๊ฐ€์ง€๋Š” ์ข…์†์„ฑ์ž…๋‹ˆ๋‹ค. ์ข…์†์„ฑ์€ DLL ์ˆ˜์ค€์ด ์•„๋‹ˆ๋ผ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ˆ˜์ค€์— ๋Œ€ํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ๊ฐ ๋‹จ์œ„(ํŒจํ‚ค์ง€)์—๋Š” ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๋ชจ๋“  ํ•„์ˆ˜ ์–ด์…ˆ๋ธ”๋ฆฌ๊ฐ€ ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. "nunit-agent.exe"๊ฐ€ ํฌํ•จ๋œ "nunit-agent"๋ผ๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. nunit-agent.exe์— nunit.dll์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ nunit.dll๋„ ํ•ด๋‹น ํŒจํ‚ค์ง€์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

"์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค"๋ผ๊ณ  ๋งํ•  ๋•Œ "์•„๋งˆ๋„ ํ˜œํƒ์„ ๋ณผ ๊ฒƒ"์ด ์•„๋‹ˆ๋ผ "์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค"๋ฅผ ์˜๋ฏธํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด... nunit ํ”„๋ ˆ์ž„์›Œํฌ(ํŒจํ‚ค์ง€ nunit)๋ฅผ ์„ค์น˜ํ•˜๋ฉด ํ…Œ์ŠคํŠธ๋ฅผ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ์‹ค์ œ๋กœ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์ผ์ข…์˜ ๋Ÿฌ๋„ˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์ฃผ์ž๋Š” ์ฝ˜์†”, GUI, VS ์–ด๋Œ‘ํ„ฐ ๋˜๋Š” ์ง์ ‘ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์„ ์˜์กด์„ฑ์ด๋ผ๊ธฐ๋ณด๋‹ค๋Š” "์ œ์•ˆ"์ด๋ผ๊ณ  ๋ถ€๋ฅผ ๊ฒƒ์ด๊ณ  ๋‚˜๋Š” ์ดˆ์ฝœ๋ฆฟ์ด ๊ทธ๊ฒƒ์„ ๊ธฐ๋กํ•  ๊ฒƒ์ด๋ผ๊ณ  ๊ธฐ๋Œ€ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฝ˜์†”/์—”์ง„ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ(ํ˜„์žฌ ํ•จ๊ป˜ ์œ ์ง€ํ•  ๊ณ„ํš์ž„) ์‹คํ–‰ํ•  ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์œ„ํ•ด nunit ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์ผ๋ถ€ ๋ฒ„์ „(์—ฌ๋Ÿฌ ๋ฒ„์ „์ผ ์ˆ˜ ์žˆ์Œ)์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ•„์ˆ˜๋Š” ์•„๋‹™๋‹ˆ๋‹ค. . ๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ, ๋‚˜๋Š” ์ดˆ์ฝœ๋ฆฟ์ด ์ด๊ฒƒ์„ ๋‹ค๋ฃฐ ๊ฒƒ์ด๋ผ๊ณ  ๊ธฐ๋Œ€ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์ž‘์„ฑํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๊ณณ์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌด๋ฆฌํ•œ ์ž‘์—…์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์ง€๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

OTOH, GUI๋ฅผ ์„ค์น˜ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. GUI๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์‹œ์Šคํ…œ ์–ด๋”˜๊ฐ€์— ์žˆ๋Š” nunit ์—”์ง„ ๋ฒ„์ „์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ฝ˜์†”๊ณผ ํ•จ๊ป˜ ๋ฒˆ๋“ค๋กœ ์ œ๊ณต๋˜๋Š” ๋ฒ„์ „์€ ๋ณ„๋„์˜ ์—”์ง„ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ๊ฒฝ์šฐ ์–ด๋–ค ๊ด€๊ณ„๋ฅผ ์›ํ•˜์‹ญ๋‹ˆ๊นŒ?

"์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค"๋ผ๊ณ  ๋งํ•  ๋•Œ "์•„๋งˆ๋„ ํ˜œํƒ์„ ๋ณผ ๊ฒƒ"์ด ์•„๋‹ˆ๋ผ "์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค"๋ฅผ ์˜๋ฏธํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ, "์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด" - ์–ด์…ˆ๋ธ”๋ฆฌ ์ˆ˜์ค€ ์ข…์†์„ฑ.

OTOH, GUI๋ฅผ ์„ค์น˜ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. GUI๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์‹œ์Šคํ…œ ์–ด๋”˜๊ฐ€์— ์žˆ๋Š” nunit ์—”์ง„ ๋ฒ„์ „์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ฝ˜์†”๊ณผ ํ•จ๊ป˜ ๋ฒˆ๋“ค๋กœ ์ œ๊ณต๋˜๋Š” ๋ฒ„์ „์€ ๋ณ„๋„์˜ ์—”์ง„ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ๊ฒฝ์šฐ ์–ด๋–ค ๊ด€๊ณ„๋ฅผ ์›ํ•˜์‹ญ๋‹ˆ๊นŒ?

์—”์ง„์ด ์‹คํ–‰ ํŒŒ์ผ์ธ ๊ฒฝ์šฐ ํŒจํ‚ค์ง€. ์—”์ง„์ด DLL์ธ ๊ฒฝ์šฐ ์—ฌ๊ธฐ์—์„œ ํ๋ฆฟํ•ด์ง€๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๊ทธ๊ฒƒ์€ ๊ทธ๊ฒƒ์„ ํ•„์š”๋กœ ํ•˜๋Š” ๊ฐ ํŒจํ‚ค์ง€์— ๋“ค์–ด๊ฐ„๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ํŒจํ‚ค์ง€์—์„œ log4net์„ ๋ณด๋Š” ๊ฒƒ์€ ์ „๋ก€๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๊ธฐํƒ€ ๊ณ ๋ ค ์‚ฌํ•ญ:

  • ์ฝ˜์†”์˜ ์—”์ง„ ๋ฒ„์ „์ด GUI์˜ ์—”์ง„ ๋ฒ„์ „๊ณผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?
  • ์—”์ง„์ด ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ ์ž์ฒด์ ์œผ๋กœ ํŒจํ‚ค์ง€ํ•˜๋Š” ๊ฒƒ์ด ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์‚ฌ๋žŒ๋“ค์ด ๊ทธ๊ฒƒ์„ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์ด ํ˜ผ๋ž€์Šค๋Ÿฌ์šธ๊นŒ์š”?

์—”์ง„์€ API๋ฅผ ํ†ตํ•ด ๋Ÿฌ๋„ˆ๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” dll์ž…๋‹ˆ๋‹ค. api๋Š” ๋ณ„๋„์˜ ์–ด์…ˆ๋ธ”๋ฆฌ์ด๋ฉฐ ํ•ญ์ƒ ๋Ÿฌ๋„ˆ๊ฐ€ ํ•„์š”๋กœ ํ•˜๋Š” ๋ชจ๋“  ํŒจํ‚ค์ง€์™€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. API ์–ด์…ˆ๋ธ”๋ฆฌ๋Š” ์—”์ง„์„ ์ฐพ๊ณ  ๋กœ๋“œํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์—”์ง„์€ ์„œ๋น„์Šค(windows) ๋˜๋Š” daimon(linux)๊ณผ ์–ด๋ ดํ’‹์ด ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋Ÿฌ๋„ˆ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ตœ์†Œ ๋ฒ„์ „์˜ ์—”์ง„์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. API์— ์—”์ง„ ๋กœ๋“œ๋ฅผ ์š”์ฒญํ•  ๋•Œ ํ•„์š”ํ•œ ํ‘œํ˜„์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ์—”์ง„์˜ ๋กœ์ปฌ ์—”์ง„ ์‚ฌ๋ณธ์„ ๋ฒˆ๋“ค๋กœ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ API๋„ ์ด๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ผ๋ถ€ ๋Ÿฌ๋„ˆ๋Š” API ์–ด์…ˆ๋ธ”๋ฆฌ์˜ ํ˜„์žฌ ์ œํ•œ ์‚ฌํ•ญ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์‹ค์ œ๋กœ ์—”์ง„์„ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. NUnit 3 ์–ด๋Œ‘ํ„ฐ๊ฐ€ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

dll/exe ์ด๋ถ„๋ฒ•์€ dll์„ ์‚ฌ์šฉํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ dll์„ ์ฐธ์กฐํ•˜๋Š” ๊ฒƒ์ด๋ผ๋Š” ๊ฐ€์ •์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ง„์ •ํ•œ ๊ตฌ๋ณ„์€ ์ฐธ์กฐ๋˜๋Š” ํ•ญ๋ชฉ๊ณผ ์ฐธ์กฐ๋˜์ง€ ์•Š์€ ํ•ญ๋ชฉ ์‚ฌ์ด์— ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด ์ƒ๊ฐ์—๋Š”... ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋กœ ์„ค์น˜๋œ Windows ์„œ๋น„์Šค๊ฐ€ ์žˆ๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ Windows ์„œ๋น„์Šค๊ฐ€ ์•„๋‹ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ์—ฌ๋Ÿฌ ๋„๊ตฌ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

@nunit/core-team ์ง€๊ธˆ์€ nunit-console ํ”„๋กœ์ ํŠธ์— ์†ํ•˜๋Š” ๊ฒƒ ๊ฐ™์•„์š”. NUnit ํŒจํ‚ค์ง€๋Š” ํ”„๋ ˆ์ž„์›Œํฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ผ ๋ฟ์ด๋ฉฐ ์ดˆ์ฝœ๋ฆฟ์— ์ ํ•ฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. OTOH, nunit-console์€ ๋„๊ตฌ์ด๋ฉฐ ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ค๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ์ค‘์•™์—์„œ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹น์‹ ์ด ๋™์˜ํ•˜๊ฑฐ๋‚˜ ํ•ฉ๋ฆฌ์ ์ธ ์‹œ๊ฐ„ ๋‚ด์— ๋™์˜ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด, ๋‚˜๋Š” ์ด๊ฒƒ์„ ์˜ฎ๊ธฐ๊ฒ ์Šต๋‹ˆ๋‹ค. :์›ƒ๋‹ค:

@CharliePoole - ์—ฌ๊ธฐ์— ์†ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋ฐ ๋™์˜ํ–ˆ์ง€๋งŒ msi์™€ ํœด๋Œ€์šฉ ๋Ÿฌ๋„ˆ๋ฅผ ํ™•์žฅ ํŒจํ‚ค์ง€์™€ ํ•จ๊ป˜ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ด ์ž ์žฌ์ ์œผ๋กœ ํฌํ•จ๋œ๋‹ค๋Š” ์ ์„ ๊ฐ์•ˆํ•  ๋•Œ nunit-distribution์—์„œ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ด ๋” ์ ํ•ฉํ•˜์ง€ ์•Š์„๊นŒ์š”? ์–ด๋Š ์ชฝ์ด๋“ , ๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ๋„ˆ๋ฌด ๊ฑฑ์ •ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

@ChrisMaddock ๊ฐ๊ฐ msi์™€ zip์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์„ค์น˜ ํŒจํ‚ค์ง€์™€ ์ด์‹ ๊ฐ€๋Šฅํ•œ ํŒจํ‚ค์ง€๋ฅผ ์ˆ˜ํ–‰

๊ทธ๋Ÿฌ๋‚˜ NuGet ํŒจํ‚ค์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๊ธฐ๋ณธ ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ค ์ƒ๊ฐ์ž…๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๋Š” ์ฐธ์กฐ์ผ ๋ฟ์ด๋ฏ€๋กœ ํ”„๋กœ์ ํŠธ ์ž์ฒด์—์„œ ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ๊ทผ๊ฑฐ๋กœ, ์ €๋Š” ์ง์ ‘ ์ž‘์—…ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด๋Š” nunit-console ํ”„๋กœ์ ํŠธ์—์„œ ๋” ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

@CharliePoole - NuGet ํŒจํ‚ค์ง€๋ฅผ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ข‹์„ ๊ฒƒ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ˜„ ์„ค์น˜ ํŒจํ‚ค์ง€์™€ ๊ด€๋ จํ•˜์—ฌ ํ•ด๋‹น ํŒจํ‚ค์ง€์—๋Š” 15,000-25,000๊ฐœ์˜ ๋‹ค์šด๋กœ๋“œ๊ฐ€ ์žˆ๋Š” ๋ฐ˜๋ฉด ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€์˜ ๊ฒฝ์šฐ 350ํšŒ๋งŒ ๋‹ค์šด๋กœ๋“œ๋œ๋‹ค๋Š” ์ ์— ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. (15-25k, ์Šคํƒ ๋ฐฉ์‹์ด ํ™•์‹คํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—!) ์–ด๋Š ์ชฝ์ด๋“  ์„ค์น˜ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์ˆ˜์š”๊ฐ€ ๋ถ„๋ช…ํžˆ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ดˆ์ฝœ๋ฆฟ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ผ๋ฐ˜์ ์œผ๋กœ ์„ ํ˜ธํ•˜๋Š” ๊ฒƒ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰์„ ์ž๋™ํ™”ํ•˜๋Š” ์„ค์น˜ ํŒจํ‚ค์ง€๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ์ด์ „์— ์ˆ˜๋™์œผ๋กœ ์ˆ˜ํ–‰ํ–ˆ์„ ๋•Œ์™€ ๋˜‘๊ฐ™์ด ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์„ค์น˜๋œ๋‹ค๋Š” ํ™•์‹ ์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ๋‚œ์žฅํŒ์„ ํ”ผํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ์ธ์ ์œผ๋กœ - ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ํŒจํ‚ค์ง€๊ฐ€ ์œ ์ง€๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋” ์„ธ๋ถ„ํ™”๋œ ์˜ต์…˜์œผ๋กœ ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€๋ฅผ ์–ผ๋งˆ๋‚˜ ํฌ๊ฒŒ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

์•ˆ๋…•ํ•˜์„ธ์š” ํฌ๋ฆฌ์Šค,

์ด์œ ๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ @charliePool๋กœ ๋ณด๋‚ด์ง„ ๋ชจ๋“  ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋“ค์€ ๋‚˜๋ฅผ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋ฏ€๋กœ Github์„ ํ™•์ธํ•˜๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐฑ์ธ

์ฐฐ๋ฆฌ ํ’€

0203 327 4762 / 07876 773 819
www.stowga.com
21 Dartmouth Street, ๋Ÿฐ๋˜, SW1H 9BP

2016๋…„ 12์›” 7์ผ 14:49:04 Chris Maddock([email protected])
์ผ๋‹ค:

@CharliePoole https://github.com/CharliePoole - ๋™์˜ํ•˜๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
NuGet ํŒจํ‚ค์ง€๋ฅผ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ˜„ ์„ค์น˜ ํŒจํ‚ค์ง€์™€ ๊ด€๋ จํ•˜์—ฌ ์•„๋งˆ๋„
ํ•ด๋‹น ํŒจํ‚ค์ง€์— 15,000-25,000 ๋‹ค์šด๋กœ๋“œ๊ฐ€ ์žˆ๋‹ค๋Š” ์ ์€ ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€์˜ ๊ฒฝ์šฐ 350์ž…๋‹ˆ๋‹ค. (15-25,000, ์–ด๋–ป๊ฒŒ ๊ทธ๋“ค์ด
stack!) ์–ด๋Š ์ชฝ์ด๋“ , ํ™•์‹คํžˆ ์„ค์น˜์— ๋Œ€ํ•œ ์ˆ˜์š”๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
ํŒจํ‚ค์ง€.

์ดˆ์ฝœ๋ฆฟ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ผ๋ฐ˜์ ์œผ๋กœ ์„ ํ˜ธํ•˜๋Š” ๊ฒƒ์€ ์„ค์น˜๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ธฐ๋ณธ์ ์œผ๋กœ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰์„ ์ž๋™ํ™”ํ•˜๋Š” ํŒจํ‚ค์ง€ -
๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€
๋‚ด๊ฐ€ ์†์œผ๋กœ ํ•  ๋•Œ ์ด์ „์— ํ–ˆ์„ ๊ฒƒ์ด๊ณ 
ํ˜ผ๋ž€์„ ํ”ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ์ธ์ ์œผ๋กœ - ๋ณด๊ณ ์‹ถ๋‹ค
์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ํŒจํ‚ค์ง€๊ฐ€ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํœด๋Œ€์šฉ ํŒจํ‚ค์ง€๋Š”
๋” ์„ธ๋ถ„ํ™”๋œ ์˜ต์…˜์œผ๋กœ ํฌ๊ฒŒ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค!

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/nunit/nunit/issues/452#issuecomment-265466082 ๋˜๋Š” ์Œ์†Œ๊ฑฐ
์Šค๋ ˆ๋“œ
https://github.com/notifications/unsubscribe-auth/AAvZpiyULPLMUNKYzYxRq-ErjVdvaiSCks5rFsdfgaJpZM4DQJtZ
.

@charliepool github์ด๋‚˜ ๋ฉ”์ผ ์„œ๋ฒ„๊ฐ€ ์šฐ๋ฆฌ๋ฅผ ํ˜ผ๋ž€์Šค๋Ÿฝ๊ฒŒ

์—ฌ๋Ÿฌ ๋Ÿฐ๋˜ ์ƒ์ ์—์„œ ์ฃผ๊ธฐ์ ์œผ๋กœ ์ •๋ณด๋ฅผ ๋ฐ›๋Š” Gmail์˜ charlie.poole๊ณผ ๊ฐ™์€ ์‚ฌ๋žŒ์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. :์›ƒ๋‹ค:

ํ•˜ํ•˜ - ๋‚ด๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

2016๋…„ 12์›” 7์ผ 15:23:20, CharliePoole([email protected])
์ผ๋‹ค:

@charliepool https://github.com/charliepool github ๋˜๋Š” ๋ฉ”์ผ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.
์„œ๋ฒ„๊ฐ€ ์šฐ๋ฆฌ๋ฅผ ํ˜ผ๋ž€์Šค๋Ÿฝ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋ฐ›๋Š” Gmail์˜ charlie.poole๊ณผ ๊ฐ™์€ ์‚ฌ๋žŒ์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.
๋‹ค์–‘ํ•œ ๋Ÿฐ๋˜ ์ƒ์ ์—์„œ ์ •๊ธฐ์ ์œผ๋กœ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ˜„

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/nunit/nunit/issues/452#issuecomment-265475613 ๋˜๋Š” ์Œ์†Œ๊ฑฐ
์Šค๋ ˆ๋“œ
https://github.com/notifications/unsubscribe-auth/AAvZpkMaL8QzLvgmwJSHOJ4VNJ11MOrSks5rFs9fgaJpZM4DQJtZ
.

์ฐฐ๋ฆฌ ํ’€

0203 327 4762 / 07876 773 819
www.stowga.com
21 Dartmouth Street, ๋Ÿฐ๋˜, SW1H 9BP
@ctapool https://twitter.com/ctapool @stowga https://medium.com/stowga

์‚ฌ๊ณผ ์ฐฐ๋ฆฌ์™€ ์ฐฐ๋ฆฌ - ๋‹น๋ถ„๊ฐ„ @ ์‚ฌ์šฉ์„ ์ค‘๋‹จํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

@ChrisMaddock @rprouse ์ด๊ฒƒ์€ ์ž ์‹œ ๋™์•ˆ ์•‰์•„ ์žˆ์—ˆ๊ณ  ์ด์ œ ๋‚˜์—๊ฒŒ ํ• ๋‹น๋œ ๋‘ ๊ฐ€์ง€ ๊ณต๊ฐœ ํ”„๋ ˆ์ž„์›Œํฌ ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ด๋ฏธ ์ดˆ์ฝœ๋ฆฟ์„ ํ†ตํ•ด nunit-console์„ ์ถœํŒํ–ˆ๋‹ค๋Š” ์ธ์ƒ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ดˆ์ฝœ๋ฆฟ์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ๋ฐฐ์šฐ๊ธฐ ์œ„ํ•œ ์—ฐ์Šต์œผ๋กœ NUnit ํ”„๋กœ์ ํŠธ ์—๋””ํ„ฐ๋ฅผ ์ถœํŒํ–ˆ๊ณ  ์ฝ˜์†”๋กœ ๋„˜์–ด๊ฐˆ ๊ณ„ํš์ด์—ˆ์ง€๋งŒ ๋‹ค๋ฅธ ๊ฒƒ๋“ค์ด ๋– ์˜ฌ๋ž๋‹ค. ์‚ฌ์‹ค, ์ฝ˜์†”์šฉ ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ์—๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋งŒ ์žˆ์œผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ด ์Šค๋ ˆ๋“œ์— ๋Œ€ํ•œ ๋ฐฉ๋Œ€ํ•œ ํ† ๋ก ์ด ์žˆ์œผ๋ฏ€๋กœ ์šฐ๋ฆฌ๊ฐ€ ํ•ด์•ผ ํ•  ์ผ์„ ์š”์•ฝํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค...

  1. ์ฝ˜์†”์šฉ Chocolatey ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ฝ˜์†” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

  2. ์–ด๋–ป๊ฒŒ ๋“  ์˜ค๋ž˜๋œ NUnit ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋ฅผ ๊ตฌ์‹์œผ๋กœ ํ‘œ์‹œํ•˜๊ณ  ๋” ์ด์ƒ ์œ ์ง€ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ํ•  ์ผ๋งŒ ๋‚จ์€ ๊ฒƒ์€ 3.4 ์ดํ›„์— ์ƒ์‚ฐ์„ ์ค‘๋‹จํ•œ ํŒจํ‚ค์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๊ธฐ์กด nunit ํŒจํ‚ค์ง€๋ฅผ chocolatey์— ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” dgtm/chocolatey-packages์— ๋ฌธ์ œ๋ฅผ ์ œ๊ธฐํ•˜์—ฌ ๊ทธ๊ณณ์„ ์ •๋ฆฌํ–ˆ์œผ๋ฉฐ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์ „ ํŒจํ‚ค์ง€์˜ ์ƒˆ ๋ฒ„์ „์„ ๊ฒŒ์‹œํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ๋•Œ ์‚ฌ์šฉ์ž๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์„ ๋•Œ๊นŒ์ง€ ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค.

@CharliePoole - ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ choco์— ๋‘์ง€ ์•Š๊ธฐ๋กœ ๋ช…์‹œ์ ์œผ๋กœ ๊ฒฐ์ •ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ฃ ? ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด ๋ฌธ์ œ์˜ ์˜๋ฏธ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ž‘์„ฑํ•˜์ง€ ์•Š์€ ๊ธฐ์กด ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€๋ฅผ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์œผ๋กœ ์ ์ฐจ ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋ฌด์—‡์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”์ง€ ์•Œ๋ ค์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ฐจ๋‹จ์„ ํ•ด์ œํ•˜๊ณ  ์™„๋ฃŒํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๊ฐ€ ์›๋ž˜ ๋งํ•œ ๊ฒƒ๊ณผ ๋ฐ˜๋Œ€๊ฐ€ ๋˜๋„๋ก ์˜๋ฏธ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ ํ˜ผ๋ž€์Šค๋Ÿฝ๋‹ค๋Š” ๊ฒƒ์„ ์ธ์ •ํ•˜์ง€๋งŒ, ์ด์ „ ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๋•Œ ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ•  __ ๊ฒƒ์ž…๋‹ˆ๋‹ค__. ๐Ÿ˜„

๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๋Š” ์ด์ „ ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๋•Œ ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ช…ํ™•ํžˆ ํ•˜์ž๋ฉด, ์šฐ๋ฆฌ๊ฐ€ ์ดˆ์ฝœ๋ฆฟ์— ํ”„๋ ˆ์ž„์›Œํฌ ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ•  ๊ณ„ํš์ด๋ผ๋Š” ๋œป์ธ๊ฐ€์š”? ๊ทธ ์ดํ›„๋กœ NuGet์—๋งŒ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ, choco์—๋Š” ์ฃผ์ž๋งŒ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

msi๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” Chocolatey์—์„œ ์šฐ๋ฆฌ๊ฐ€ ์ž‘์„ฑํ•˜์ง€ ์•Š์€ ์˜ค๋ž˜๋œ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. nunit.msi๋ฅผ ์ถœ์‹œํ•  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋žซ๋™์•ˆ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์—…๋ฐ์ดํŠธํ•  ๊ถŒํ•œ์ด ์žˆ๊ณ  ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€๋กœ ์—…๋ฐ์ดํŠธํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์ „ ํŒจํ‚ค์ง€๋ฅผ ์‚ญ์ œํ•˜๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋ฉด ์—…๋ฐ์ดํŠธํ•˜์—ฌ ๋ชจ๋“  ์ฝ”๋“œ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ์‚ฌ์šฉ์ž์—๊ฒŒ ์‚ฌ์šฉํ•˜์ง€ ๋ง๋ผ๊ณ  ์ง€์‹œํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. Chocolatey์—๋Š” ์ด์— ๋Œ€ํ•œ ์ผ๋ จ์˜ ๊ทœ์น™์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ ๊ทธ๋“ค์ด ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์€ nunit-console ๋˜๋Š” nunit-console-runner ํŒจํ‚ค์ง€๋ฅผ ์–ป๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ฐจ๋‹จ์ด ํ•ด๋‹น ํŒจํ‚ค์ง€๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ ํ•ด๋‹น ํŒจํ‚ค์ง€๋ฅผ ๊ฐ€๋ฆฌํ‚ฌ ์ค€๋น„๊ฐ€ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ๊ทธ๋ ‡๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ ๋‹ค์Œ ์ฝ˜์†” ๋ฆด๋ฆฌ์Šค๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์„์ง€๋„ ๋ชจ๋ฅธ๋‹ค๋Š” ์•ฝ๊ฐ„์˜ ์˜์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜. ๋‚˜๋Š” ๋‹น์‹ ์ด ๋Œ€์ฒด _framework_ ํŒจํ‚ค์ง€๋ฅผ ๊ณ„ํšํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๋œป์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ €์—๊ฒŒ ์ƒˆ๋กœ์šด ์†Œ์‹์ด์—ˆ์Šต๋‹ˆ๋‹ค! ๐Ÿ˜†

ํ˜ผ๋™์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ์ œ๋ชฉ์„ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฒ€ํ†  ํ›„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ž‘์—…์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ์ด์ „ ํœด๋Œ€์šฉ ๋˜๋Š” ์„ค์น˜ ๋ฆด๋ฆฌ์Šค๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ดˆ์ฝœ๋ฆฟ์šฉ ์ตœ์‹  nunit-console ํŒจํ‚ค์ง€๋ฅผ ๋ฆด๋ฆฌ์Šคํ•˜์‹ญ์‹œ์˜ค.

  2. ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š๋”๋ผ๋„ ๋‚ด์šฉ๋ฉด์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด nunit-console ๋ฆด๋ฆฌ์Šค๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ๊ธฐ์กด nunit ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ์ด๊ฒƒ์„ ๋งก์„ ์œ„์น˜์— ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ๋‹น์‹ ์ด ๋‚ด ์ œ๊ฑฐ๋ฅผ ์ œ์•ˆํ•˜๋Š” ๊ฒƒ ๊ฐ™์•„์š”?

๋ง™์†Œ์‚ฌ, ์•„๋‹ˆ. ๋กœ๋“œ๋ฅผ ํผ๋œจ๋ฆฌ๊ณ  ์‹ถ์—ˆ์ง€๋งŒ ๋ˆ„๊ฐ€ Chocolatey์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋Œ์ด์ผœ๋ณด๋ฉด ์ด ๋ฌธ์ œ๊ฐ€ ๋ˆ„๊ตฐ๊ฐ€์—๊ฒŒ ํ• ๋‹น๋˜์—ˆ๋Š”์ง€ ์‚ดํŽด๋ดค์–ด์•ผ ํ–ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ์‹์œผ๋กœ ๋‚˜๋Š” ์ด๊ฒƒ์ด ๋‹น์‹ ์ด ํŒ€์—์„œ ํ•˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ๋Š” ์ผ์ด ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋Š” ๋Œ€์‹  ๋‚ด๊ฐ€ ์ •๋ง ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ๋งํ–ˆ์–ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ œ๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋” ์ด์ƒ ์ฐจ๋‹จ๋˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ๋ผ๋ฒจ์„ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๋” ์ด์ƒ ํŒจํ‚ค์ง€ ๋ฆด๋ฆฌ์Šค์— ๊ด€์—ฌํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋‚ด ํ• ๋‹น๋„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

@CharliePoole - ๋‚ด๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ๋Š” ํ•œ(๊ณต๊ฐœ์ ์œผ๋กœ!) ๊ท€ํ•˜์˜ ๊ณ„์ •์€ ์กฐ์ง์—์„œ ์‚ฌ์šฉ ์ค‘๋‹จํ•˜๋ ค๋Š” ๊ธฐ์กด ํŒจํ‚ค์ง€์˜ ์œ ์ผํ•œ ์œ ์ง€ ๊ด€๋ฆฌ์ž์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค(https://github.com/nunit/nunit/issues/452 #issuecomment-340535303). ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ํ•ด๋‹น ๋ฌธ์ œ์— ์•ก์„ธ์Šคํ•˜์ง€ ์•Š๊ณ  ์ด ๋ฌธ์ œ๋ฅผ ์™„๋ฃŒํ•  ์ˆ˜ ์žˆ์„์ง€ ํ™•์‹ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๊ฐ€ ์—ด๋ ค ์žˆ๋Š” ๋™์•ˆ @rprouse ๋„ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

์ฐธ๊ณ ๋กœ, ์กฐ์ง์—์„œ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” 4๊ฐœ์˜ ์—”์ง„ ํ™•์žฅ๋„ ๊ท€ํ•˜์˜ ๊ณ„์ • ์•„๋ž˜ ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ์ฐธ์—ฌ๋ฅผ ์ข…๋ฃŒํ•˜๋ ค๋Š” ๊ฒฝ์šฐ Rob์„ ๋™์‹œ์— ์—ฌ๊ธฐ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ํ•ฉ๋ฆฌ์ ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. (์ปคํ”Œ ์œ ์ง€์— ๊ด€์‹ฌ์ด ์—†๋‹ค๋ฉด?? ๐Ÿ˜›)

๋˜ํ•œ ์ด๊ฒƒ์€ ๋ช‡ ๋‹ฌ ์ „์— ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. https://blog.nuget.org/20180417/organizations-on-nuget-org.html

@ChrisMaddock ์•„! ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ์žŠ์—ˆ๋‹ค. ๋‹ค์‹œ ํ•œ ๋ฒˆ ์‚ดํŽด๋ณด๊ณ  ๋ฌด์—‡์ด ๊ฐ€๋Šฅํ•œ์ง€ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ง€ ๊ด€๋ฆฌ์ž์™€ ๋™๋“ฑํ•œ ๊ถŒ๋ฆฌ๊ฐ€ ์žˆ๋Š”์ง€ ๋˜๋Š” ํ•ด๋‹น ํŒจํ‚ค์ง€์˜ ์›๋ž˜ ์œ ์ง€ ๊ด€๋ฆฌ์ž์—๊ฒŒ๋งŒ ๊ถŒํ•œ์ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋Š” ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ๊ทธ์—๊ฒŒ ๋ฌป๋Š” ๊ฒƒ์ด ์˜ˆ์˜์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ ํŒจํ‚ค์ง€๋ฅผ ๋ˆ„๊ฐ€ ์ฑ…์ž„์ ธ์•ผ ํ•˜๋Š”์ง€ ๊ฒฐ์ •ํ•ด์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. Rob์ด๋ผ๋ฉด ์ข€ ๋” ํƒˆ์ค‘์•™ํ™”๋œ NUnit ํ”„๋กœ์ ํŠธ๋ฅผ ํ–ฅํ•œ ์›€์ง์ž„์€ ๊ฑฐ์˜ ๋‹ค ๋๋‚œ ๊ฒƒ ๊ฐ™์•„์š”.

๋‚˜๋Š” ๋˜ํ•œ ํ™•์žฅ์„ ์œ ์ง€ํ•˜๋Š” ์œ ์ผํ•œ ์‚ฌ๋žŒ์ด๋ผ๋Š” ๊ฒƒ์„ ์žŠ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋งˆ์ง€๋ง‰ ๋ฆด๋ฆฌ์Šค๊ฐ€ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ๋˜์—ˆ๋Š”์ง€ ๋‚˜ ์ž์‹ ์—๊ฒŒ ์ƒ๊ธฐ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๋’ค๋ฅผ ๋Œ์•„๋ณด์•„์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•„๋ฌด๋„ ํ™•์žฅ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ๋ฆฌ๋”๊ฐ€ ๋œ ์ ์ด ์—†์œผ๋ฏ€๋กœ ๋ˆ„๊ฐ€ ๊ฐ๊ฐ์„ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ถœ์‹œํ–ˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€์˜ ์š”์ฒญ์— ๋”ฐ๋ผ ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์•„์š”.

๋‚ด๊ฐ€ ํŒ€์— ๋‚จ์•„ ํŠน์ • ํ”„๋กœ์ ํŠธ๋ฅผ ์ด๋Œ๊ณ  ์‹ถ์—ˆ์ง€๋งŒ ์›ํ•˜๋Š” ๋Œ€๋กœ ๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ๊ฒƒ์„ ์ด๋ฏธ ์•Œ๊ณ  ๊ณ„์‹ค ๊ฑฐ๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ๊ทธ ํŠน์ •ํ•œ ๋‹ค๋ฆฌ ์•„๋ž˜๋กœ ๋งŽ์€ ๋ฌผ์ด ํ˜๋ €์Šต๋‹ˆ๋‹ค. ์–ด์จŒ๋“ , ๋‚˜๋Š” ํ˜„์žฌ ์‹œ์ ์—์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ณต๊ฐœ๋˜์ง€ ์•Š๊ณ  ํŒ€์›๋“ค ์‚ฌ์ด์—์„œ ๋” ๋งŽ์€ ๋…ผ์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

@jnm2 ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋ˆˆ์น˜ ์ฑ„์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ์‚ฌ์šฉํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค Charlie, ์ž˜ ๋“ค๋ฆฝ๋‹ˆ๋‹ค. ์ฐธ๊ณ ๋กœ ์ €๋Š” ์›๋ž˜ ์œ ์ง€ ๊ด€๋ฆฌ์ž์ธ @dtgm ์ด ํ˜„์žฌ ๊ทธ์˜ ๋ฐฉ๋Œ€ํ•œ ์ดˆ์ฝœ๋ฆฟ ํŒจํ‚ค์ง€์—์„œ ๋ฌผ๋Ÿฌ๋‚ฌ๊ณ  @gep13 ์ด ์œ ์ง€ ๊ด€๋ฆฌ๋ฅผ ๋•๊ธฐ ์œ„ํ•ด ๋ฏฟ์Šต๋‹ˆ๋‹ค .

๋‚˜๋Š”๋ณด๋‹ค ๊ทธ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋” ์ด์ƒ ๊ณต์‹ ์†Œ์Šค ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค ์ด -ํ•˜์ง€๋งŒ ๋‚œ ๊ฝค ํ™•์‹  @ gep13 ๋” ๋ช…ํ™•ํžˆ ์ˆ˜ ์žˆ๊ณ , ์šฐ๋ฆฌ๊ฐ€ ๊ทธ์˜ ์† ๋–จ์–ด์ ธ ๋ช‡์„ํ•˜๋Š” ํ–‰๋ณต ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

์šฐ๋ฆฌ๋Š” ๊ทธ ํŒจํ‚ค์ง€๋ฅผ ๋ˆ„๊ฐ€ ์ฑ…์ž„์ ธ์•ผ ํ•˜๋Š”์ง€ ๊ฒฐ์ •ํ•ด์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. Rob์ด๋ผ๋ฉด ์ข€ ๋” ํƒˆ์ค‘์•™ํ™”๋œ NUnit ํ”„๋กœ์ ํŠธ๋ฅผ ํ–ฅํ•œ ์›€์ง์ž„์€ ๊ฑฐ์˜ ๋‹ค ๋๋‚œ ๊ฒƒ ๊ฐ™์•„์š”.

๋‚˜๋Š” ์žฅ๊ธฐ์ ์œผ๋กœ ์šฐ๋ฆฌ๊ฐ€ '์กฐ์ง ๊ณ„์ •' ์ฑ…์ž„์„ ์›ํ•œ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ๊ธฐ์ ์œผ๋กœ๋Š” Rob์ด ์ด๋ฏธ ํ•œ ํŒจํ‚ค์ง€์˜ ๊ณ„์ •์ด๊ธฐ ๋•Œ๋ฌธ์— ํ•จ๊ป˜ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ํ•ฉ๋ฆฌ์ ์ผ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค!

@ChrisMaddock yip , ๋‹น์‹ ์€ ์ด๊ฒƒ์„ ์ •ํ™•ํžˆ ์š”์•ฝํ–ˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ํŒจํ‚ค์ง€์˜ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์€ ๊ณ„์ •์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์•Œ๋ ค์ฃผ์‹œ๋ฉด ์ฒ˜๋ฆฌํ•ด ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. @dtgm ์€ ํŒจํ‚ค์ง€๋ฅผ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์ œ๊ณต๋  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋„์›€์ด ๊ฐ์‚ฌํ•˜๊ฒŒ ๋ฐ›์•„๋“ค์ผ ๊ฒƒ์ด๋ผ๋Š” ์ ์„ ๋ถ„๋ช…ํžˆ ํ–ˆ์œผ๋ฉฐ ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์ด๋™๋œ ํŒจํ‚ค์ง• ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ๊ทธ์˜ ์ €์žฅ์†Œ์— ๋Œ€ํ•œ ํ‘ธ์‹œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ์–ด๋–ป๊ฒŒ ์ง„ํ–‰ํ•˜๊ณ  ์‹ถ์€์ง€ ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ๊ฒŒ๋ฆฌ!

@nunit/framework-team & @CharliePoole - ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค๋ฅผ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ๋Š” @rprouse์˜ ๊ณ„์ •์„ ๊ฑฐ๊ธฐ์— ๋‘๋Š” ๋ฐ ๋™์˜ํ•˜์ง€ ์•Š๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋ฏธ๋ž˜์— ๋” '์กฐ์ง ๊ธฐ๋ฐ˜'์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ด€์ ์—์„œ์š”?

@ChrisMaddock ์ถ”์ฒœํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด... nunit ๊ณ„์ •์„ ๋งŒ๋“ค๊ณ  ์•”ํ˜ธ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŒ€ ๋‚ด์—์„œ ์ž๊ฒฉ ์ฆ๋ช…์„ ๊ณต์œ ํ•˜๋ฉด ํ•œ ๊ฐœ์ธ์—๊ฒŒ ๋ฌถ์ด์ง€ ์•Š๊ณ  ์•ž์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ํ›จ์”ฌ ์‰ฝ๊ฒŒ ์œ ์ง€ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ์ผ€์ดํฌ ํŒจํ‚ค์ง€๋กœ ํ•˜๋Š” ์ผ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

https://chocolatey.org/packages/cake.portable

์šฐ๋ฆฌ ์ผ€์ดํฌ ํŒ€ ๊ตฌ์„ฑ์›์€ ๋ชจ๋‘ ํŒจํ‚ค์ง€์˜ ์œ ์ง€ ๊ด€๋ฆฌ์ž์ด์ง€๋งŒ ๋ชจ๋“  ์ƒˆ ํŒจํ‚ค์ง€ ๋ฒ„์ „์„ ํ‘ธ์‹œํ•˜๋Š” ๊ฒƒ์€ ์ฃผ์š” ์ผ€์ดํฌ ๋นŒ๋“œ ๊ณ„์ •์ž…๋‹ˆ๋‹ค. Chocolatey๋Š” NuGet์ด ์ตœ๊ทผ์— ์ถœ์‹œํ•œ ๊ฒƒ๊ณผ ๋™์ผํ•œ ์กฐ์ง ๊ฐœ๋…์„ ๊ฐ–๊ณ  ์žˆ์ง€ ์•Š์ง€๋งŒ ์œ„์—์„œ ์ œ์•ˆํ•œ ๊ฒƒ์ด ํ˜„์žฌ๋กœ์„œ๋Š” ๊ฐ€์žฅ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

Gary์—๊ฒŒ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์žฅ๊ธฐ์ ์œผ๋กœ ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ์œ„์น˜์— ๋” ๊ฐ€๊นŒ์›Œ์ง„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค!

@nunit/framework-team & @CharliePoole - ์œ„์˜ Gary์˜ ์ œ์•ˆ์— ๋ฐ˜๋Œ€ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ์ด๊ฒƒ์„ ์‹คํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฆฌ ์ž‘์—…์„ ํ•˜๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค. ๐Ÿ˜„

@ChrisMaddock ๋„์›€์ด ํ•„์š”

@ChrisMaddock ์ดˆ์ฝœ๋ฆฟ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  nunit ๊ณ„์ •์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์€ ๋ฐฉํ–ฅ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž์™€ ์ €์ž‘๊ถŒ ์†Œ์œ ์ž๊ฐ€ ๋™์ผ์ธ์ด์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€ ์ƒํƒœ๋ฅผ ์–ป์—ˆ์ง€๋งŒ ์‹ค์ œ๋กœ ํ™•์žฅํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์ผ๋‹จ ์„ค์ •๋˜๋ฉด ๋ชจ๋“  ํŒจํ‚ค์ง€์— ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์ด ํŠน์ • ํŒจํ‚ค์ง€์— nunit์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์€ ๋” ์ด์ƒ ๋ฆด๋ฆฌ์Šคํ•˜๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋Š์Šจํ•œ ๋์„ ๋ฌถ์œผ๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@gep13 ์ด ๋ฌธ์ œ๋Š” ์˜ค๋ž˜์ „๋ถ€ํ„ฐ ์žˆ์–ด์˜จ ๋ฌธ์ œ

TL;DR ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋œ nunit ํŒจํ‚ค์ง€๋Š” ๋” ์ด์ƒ ์ƒ์„ฑ๋˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํŒจํ‚ค์ง€์˜ ๋ชจ๋“ˆ ์กฐํ•ฉ์€ ๋” ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉฐ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€ ์ด๋ฆ„์œผ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค. NUnit ํ”„๋กœ์ ํŠธ๋Š” ์ด๋ฏธ ํ•ด๋‹น ํŒจํ‚ค์ง€์˜ ์ดˆ์ฝœ๋ฆฟ ๋ฒ„์ „์„ ์ง์ ‘ ์ƒ์‚ฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์— ๋Œ€ํ•œ ๋…ผ์˜๋Š” dtgm/chocolatey-packages#310์—์„œ ๊ณ„์†ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@CharliePoole - ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ณด๊ด€ํ•˜๋ ค๋Š” ํŒจํ‚ค์ง€์™€ ๊ด€๋ จํ•˜์—ฌ ์กฐ์ง ๊ณ„์ • ์„ค์ •์„ ์ œ๊ฐ€ ์ฒ˜๋ฆฌํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ์œ ์ง€ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ๊ท€ํ•˜์˜ ์กฐ์น˜๊ฐ€ ํ•„์š”ํ•˜์ง€๋งŒ ๊ท€ํ•˜๊ฐ€ ์ด ๋ฌธ์ œ๋ฅผ ๋„˜๊ฒจ์ฃผ๋ ค๊ณ  ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ €๋Š” ๊ธฐ๊บผ์ด ๋‹ค๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค!

@ChrisMaddock ์˜ค๋ž˜์ „ ์— ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ–ˆ์ง€๋งŒ ํ”„๋กœ์ ํŠธ์— ํฐ ๋ฐฑ๋กœ๊ทธ๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์˜ ์ž‘์—…์€ ์‹ค์ œ๋กœ ๊ฑฐ๊ธฐ์—์„œ ์™„๋ฃŒ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์•ž์œผ๋กœ๋Š” ํŒ€์ด nunit ๊ณ„์ •์„ ์›ํ•˜๋Š”์ง€ ์•„๋‹ˆ๋ฉด ๋ˆ„๊ฐ€ ๊ฐœ๋ณ„์ ์œผ๋กœ ๊ณ„์ •์„ ์ˆ˜ํ–‰ํ•˜๋Š”์ง€ ์ถ”์ ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•˜๋Š”์ง€ ์•Œ์•„๋ณด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ํ•ด์•ผ ํ•  ์‚ฌ๋žŒ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ๋‚˜์ค‘์— ๋‚˜๋ฅผ ์ œ๊ฑฐํ•˜๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŒ€ ๋˜๋Š” ํŒ€ ๋ฆฌ๋”์˜ ๊ฒฐ์ •์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

WRT 4๊ฐœ์˜ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์—๋Š” ํŒ€๋„ ๋ฆฌ๋“œ๋„ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํŒ€์‹œํ‹ฐ ํ™•์žฅ์—๋งŒ ๋‹ด๋‹น์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

FWIW ๋‚˜๋Š” ํ•œ ์ง€์ ์—์„œ ์ผ๋ถ€ ํ™•์žฅ์„ ๋ถ„๊ธฐํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ–ˆ์œผ๋ฉฐ ๋‚ด๊ฐ€ ์˜์กดํ•˜๋Š” ํ™•์žฅ์ด ์œ ์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ์–ป์ง€ ๋ชปํ•˜๋ฉด ๊ทธ๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•ž์œผ๋กœ๋Š” ํŒ€์ด nunit ๊ณ„์ •์„ ์›ํ•˜๋Š”์ง€ ์•„๋‹ˆ๋ฉด ๋ˆ„๊ฐ€ ๊ฐœ๋ณ„์ ์œผ๋กœ ๊ณ„์ •์„ ์ˆ˜ํ–‰ํ•˜๋Š”์ง€ ์ถ”์ ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•˜๋Š”์ง€ ์•Œ์•„๋ณด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ํ•ด์•ผ ํ•  ์‚ฌ๋žŒ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ๋‚˜์ค‘์— ๋‚˜๋ฅผ ์ œ๊ฑฐํ•˜๊ฒŒ ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŒ€ ๋˜๋Š” ํŒ€ ๋ฆฌ๋”์˜ ๊ฒฐ์ •์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์•ž์„œ๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. @nunit/framework-team์˜ ๋‹ต๋ณ€์„ ๊ธฐ๋‹ค๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

์œ ์—ฐ์„ฑ์„ ์œ„ํ•ด ์กฐ์ง ๊ณ„์ •์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.

@ChrisMaddock ๋ฌธ์ œ ์—†์Šต๋‹ˆ๋‹ค. ๋‚ด ์ž์‹ ์˜ ๊ธฐ๋ณธ ์„ค์ •(์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ)์€ GitHub ์ž์ฒด์— ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž ID๊ฐ€ ์žˆ๋Š” ์กฐ์ง ๊ณ„์ •์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์€ ๊ณต์œ  ID๊ฐ€ ๊ฐ€์•ผ ํ•  ๊ธธ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‚˜๋„ ์กฐ์ง ๊ณ„์ •์ด ์ข‹๋‹ค. @gep13 ์„ค์ •์ด ์™„๋ฃŒ ๋˜๋ฉด ์ •๋ณด๋ฅผ [email protected]๋กœ ์ด๋ฉ”์ผ๋กœ ๋ณด๋‚ด์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋˜๋Š” ํŠธ์œ„ํ„ฐ @rprouse๋กœ DM์ฃผ์„ธ์š”.

๋‚˜์—๊ฒŒ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์ด ์ค‘์•™ ์ง‘์ค‘ํ™”๋กœ ๋Œ์•„๊ฐ€๊ณ  ์žˆ๋‹ค๋Š” @CharliePoole ์˜ ์˜๊ฒฌ์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. NUnit ์กฐ์ง์˜ ๋ชจ๋“  ๋ฉด์„ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ์ง€๋„ ์•Š๊ณ  ์‹œ๊ฐ„๋„ ์—†์ง€๋งŒ ํ•ด์•ผํ•  ๋™์•ˆ ์—…๋ฐ์ดํŠธ๋ฅผ ์—…๋กœ๋“œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค ๐Ÿ˜„

@ChrisMaddock ์กฐ์ง ๊ณ„์ •์„ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” Chocolatey ํŒจํ‚ค์ง€ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ์ด ๋ถ€๋ถ„์„ ์œ ์ง€ํ•˜๋Š” ์ผ์—์„œ ๋ฌผ๋Ÿฌ๋‚ฌ๊ณ  ์ „์ฒด ๊ทธ๋ฆผ์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์‚ฌ์šฉํ•  ์กฐ์ง ๊ณ„์ •์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  @gep13์— ์—ฐ๋ฝํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ์ ์šฉํ•  ํŒจํ‚ค์ง€๋งŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์ž˜๋ชป ์ดํ•ดํ–ˆ์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์šฐ๋ฆฌ ์ค‘ ํ•˜๋‚˜๊ฐ€ nunit ๊ณ„์ •์„ ๋งŒ๋“œ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. o ์ดํ•ดํ•˜๋Š” ๋ฐ”์™€ ๊ฐ™์ด, ๊ทธ๊ฒƒ์€ ๋‹จ์ง€ ์‚ฌ์šฉ์ž ID์ด๋ฉฐ ์šฐ๋ฆฌ๊ฐ€ ๊ทธ๊ฒƒ์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ์˜๋ฏธ์—์„œ "์กฐ์ง์ "์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

์ €๋„ ์ž˜๋ชป ์ดํ•ดํ–ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ Gmail ์ฃผ์†Œ ์ค‘ ํ•˜๋‚˜๋ฅผ @gep13์œผ๋กœ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค. @gep13 ๋‚ด๊ฐ€ ์„ค์ •ํ•ด์•ผ ํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ

@ChrisMaddock ์กฐ์ง ๊ณ„์ •์„ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” Chocolatey ํŒจํ‚ค์ง€ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์•„๋‹ˆ์š”. ํ•˜์ง€๋งŒ ๋‹ค์Œ์— ์ปดํ“จํ„ฐ๋ฅผ ํ•  ๋•Œ ๊ทธ๋Ÿฐ ๋ชฉ๋ก์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ˜Š

@rprouse ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€๋Š” ์šฐ๋ฆฌ๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ์ถ”๊ฐ€ํ•œ @dtgm์— ์˜ํ•ด ์œ ์ง€ ๊ด€๋ฆฌ๋˜์—ˆ์œผ๋ฉฐ ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€์— ์ƒˆ๋กœ์šด nunit.msi ๋˜๋Š” zip์ด ๋‚˜ํƒ€๋‚  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋” ์ด์ƒ ํ•ด๋‹น ํŒจํ‚ค์ง€๋ฅผ ์ƒ์‚ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ํ•ด๋‹น ํŒจํ‚ค์ง€์˜ ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋“ค์ด ์—ฌ์ „ํžˆ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด 3.4์—์„œ ๋ง‰ํžˆ๋ฏ€๋กœ ๋งŽ์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ( @ferventcoder ๋„

nunit org ID๋Š” ์—…๋กœ๋“œํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด ํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹Œ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ํŒจํ‚ค์ง€์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

image
๐Ÿ˜ข ์ดˆ์ฝ”์˜ ์˜คํ”„๋ผ์ธ - ํŒจํ‚ค์ง€ ๋ชฉ๋ก์€ ์ถ”ํ›„ ๊ณต๊ฐœ๋ฉ๋‹ˆ๋‹ค!

๋‹ค์Œ์€ ์šฐ๋ฆฌ๊ฐ€ ์ •๋ฆฌํ•ด์•ผ ํ•  ์ดˆ์ฝœ๋ฆฟ์— ๋Œ€ํ•œ ํ˜„์žฌ NUnit ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ๋ฆฌ๋ทฐ์ž…๋‹ˆ๋‹ค. ๊ฐ๊ฐ์— ๋Œ€ํ•ด ์ตœ์„ ์˜ ์กฐ์น˜๋ผ๊ณ  ์ƒ๊ฐ๋˜๋Š” ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ํ˜„์žฌ charliepoole ๊ณ„์ •์— ์žˆ์Šต๋‹ˆ๋‹ค. nunit-org ๊ณ„์ •์œผ๋กœ ์ด์ „ํ•˜๋ ค๋ฉด:

  • NUnit 3 - Visual Studio ํ”„๋กœ์ ํŠธ ๋กœ๋” ํ™•์žฅ 3.7.0
  • NUnit 3 - NUnit ํ”„๋กœ์ ํŠธ ๋กœ๋” ํ™•์žฅ 3.6.0
  • NUnit 3 - NUnit V2 ํ”„๋ ˆ์ž„์›Œํฌ ๋“œ๋ผ์ด๋ฒ„ ํ™•์žฅ 3.7.0
  • NUnit 3 - NUnit V2 ๊ฒฐ๊ณผ ์ž‘์„ฑ๊ธฐ ํ™•์žฅ 3.6.0
    (์ง€๊ธˆ์€ v2 ํ™•์žฅ์ด ์กฐ์ง์— ๋‚จ์•„ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ๋‚˜์ค‘์— ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์ด๋™์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค!)

๋‹ค์Œ์€ charliepoole ๋ฐ rprouse์— ์žˆ์œผ๋ฉฐ nunit-org๋กœ ์ „์†ก๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • NUnit 3 ์ฝ˜์†” ๋Ÿฌ๋„ˆ 3.8.0

๋‹ค์Œ์€ ํ˜„์žฌ dtgm์—์„œ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ ˆ๊ฑฐ์‹œ ํŒจํ‚ค์ง€์ž…๋‹ˆ๋‹ค. ์ƒ์œ„ 2๊ฐœ๋Š” ๋˜ํ•œ charliepoole์ด ์œ ์ง€ํ•˜๊ณ  ์žˆ๊ณ , ์„ธ ๋ฒˆ์งธ๋Š” ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์„ธ ๊ฐ€์ง€ ๋ชจ๋‘ NUnit 3 Console Runner 3.8.0์„ ์œ„ํ•ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • NUnit(์„ค์น˜) 3.4.0
  • NUnit 3.4.0
  • NUnit(ํœด๋Œ€์šฉ) 3.4.0

๋‹ค์Œ NUnit ๊ด€๋ จ ๋„๊ตฌ๋Š” NikolayP์˜ charliepoole์— ์†ํ•˜๋ฉฐ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • NUnit 3 GUI ๋Ÿฌ๋„ˆ 0.6.0
  • NUnit 3 - ํŒ€ ์‹œํ‹ฐ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ํ™•์žฅ 1.0.4
  • NUnit ํ”„๋กœ์ ํŠธ ์—๋””ํ„ฐ 1.0

๋‹ค์Œ ํŒจํ‚ค์ง€๋Š” ์ง€๊ธˆ๊นŒ์ง€ ์šฐ๋ฆฌ์˜ ๋ชจ๋“  ํ† ๋ก  ์™ธ๋ถ€์— ์žˆ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์˜จ๋ผ์ธ์— ์˜ฌ๋ ธ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ ์ ˆํ•œ ์‹œ๊ธฐ์— NUnit-์กฐ์ง ํŒจํ‚ค์ง€๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉ ์ค‘๋‹จ๊ณผ ๊ด€๋ จํ•˜์—ฌ ์‚ฌ์šฉ์ž์™€ ์†Œํ†ตํ•˜๊ณ ์ž ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ๋ณ„๊ฐœ์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค!

  • NUnit ์ฝ˜์†”(ํœด๋Œ€์šฉ) 3.6.1

๋งˆ์ง€๋ง‰์€ ์„œํ”„๋ผ์ด์ฆˆ!

TeamCity ํ™•์žฅ์— ๋Œ€ํ•œ ์•ฝ๊ฐ„์˜ ์ •๋ณด: ์—…๋ฐ์ดํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํŒจํ‚ค์ง€ ์ž‘์„ฑ์ž๋กœ Nikolay๋ฅผ ์ถ”๊ฐ€ํ–ˆ์ง€๋งŒ ๋‚ด ์ด๋ฆ„์€ ๊ทธ๋Œ€๋กœ ๋‘์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ•จ์œผ๋กœ์จ ์ €์ž‘๊ถŒ ์†Œ์œ ์ž๋ฅผ ์ €์ž ์ค‘ ํ•˜๋‚˜๋กœ ์œ ์ง€ํ•˜์—ฌ ์šฐ๋ฆฌ ํŒจํ‚ค์ง€๋ฅผ ์ดˆ์ฝœ๋ฆฟ์œผ๋กœ ํŠน๋ณ„ํ•˜๊ฒŒ ์ทจ๊ธ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด์ „์— Nikolay๊ฐ€ ๋Œ€๋ถ€๋ถ„์˜ ์ž‘์—…์„ ์ˆ˜๋…„๊ฐ„ ํ•ด์™”๊ธฐ ๋•Œ๋ฌธ์— ์ €์ž‘๊ถŒ ์†Œ์œ ์ž๋กœ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์—ˆ์ง€๋งŒ ๊ทธ์˜ ํšŒ์‚ฌ๊ฐ€ ๋ฐ˜๋Œ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

WRT๊ฐ€ ํŒจํ‚ค์ง€์—์„œ ๋‚˜ ๋˜๋Š” Rob์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒฝ์šฐ NUnit ์กฐ์ง ID๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์ „์— WRT ํŒจํ‚ค์ง€ ๊ฒ€ํ† ๋ฅผ ๋ฐ›์€ ํŠน๋ณ„ํ•œ ์ฒ˜๋ฆฌ๋ฅผ ๊ณ„์† ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ‚ค์—๋Š” ํŒจํ‚ค์ง€ ์ž‘์„ฑ์ž์™€ ์†Œํ”„ํŠธ์›จ์–ด ์†Œ์œ ์ž๋ผ๋Š” ๊ณตํ†ต๋œ ์ด๋ฆ„์ด ํ•˜๋‚˜ ์ด์ƒ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚ด๊ฐ€ ๊ทธ๊ฒƒ์„ ์„ค์ •ํ•œ ์ง€ ๋ช‡ ๋…„์ด ์ง€๋‚ฌ๊ณ  chocolatey.org๋Š” ๊ทธ ์ดํ›„๋กœ ๊ด€ํ–‰์„ ๋ณ€๊ฒฝํ–ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@ChrisMaddock ๋ชฉ๋ก์„

@gep13 ํŒ€ ๊ณ„์ •์„ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. nunit.org์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ์ด๋ฉ”์ผ์€ [email protected]์ž…๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ 4๊ฐœ๋ฅผ ์ œ์™ธํ•˜๊ณ  ๋‚˜์—ด๋œ @ChrisMaddock ํŒจํ‚ค์ง€์— ์œ ์ง€ ๊ด€๋ฆฌ์ž๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋งˆ์ง€๋ง‰ ์ž‘๊ฐ€๋‹˜๊ณผ ๋”ฐ๋กœ ์—ฐ๋ฝํ•ด ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์œ„์˜ @CharliePoole ์ฃผ์„์˜ ๋งˆ์ง€๋ง‰

WRT๊ฐ€ ํŒจํ‚ค์ง€์—์„œ ๋‚˜ ๋˜๋Š” Rob์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒฝ์šฐ NUnit ์กฐ์ง ID๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์ „์— WRT ํŒจํ‚ค์ง€ ๊ฒ€ํ† ๋ฅผ ๋ฐ›์€ ํŠน๋ณ„ํ•œ ์ฒ˜๋ฆฌ๋ฅผ ๊ณ„์† ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ‚ค์—๋Š” ํŒจํ‚ค์ง€ ์ž‘์„ฑ์ž์™€ ์†Œํ”„ํŠธ์›จ์–ด ์†Œ์œ ์ž๋ผ๋Š” ๊ณตํ†ต๋œ ์ด๋ฆ„์ด ํ•˜๋‚˜ ์ด์ƒ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚ด๊ฐ€ ๊ทธ๊ฒƒ์„ ์„ค์ •ํ•œ ์ง€ ๋ช‡ ๋…„์ด ์ง€๋‚ฌ๊ณ  chocolatey.org๋Š” ๊ทธ ์ดํ›„๋กœ ๊ด€ํ–‰์„ ๋ณ€๊ฒฝํ–ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@rprouse @CharliePoole @ChrisMaddock ์š”์ฒญํ•˜์‹  ๊ฐ ํŒจํ‚ค์ง€์— ์ƒˆ๋กœ์šด NUnit Chocolatey ์‚ฌ์šฉ์ž๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://chocolatey.org/profiles/nunit.org

์ด ๊ณ„์ •๊ณผ ์—ฐ๊ฒฐ๋œ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ gravatar ๊ณ„์ •์— ์ถ”๊ฐ€ํ•˜๊ณ  NUnit ๋กœ๊ณ ๋ฅผ ์—ฐ๊ฒฐํ•ด ๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด chocolatey.org์— "๊ณต์‹์ ์œผ๋กœ" ๋” ๋งŽ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

_ํŠน์ˆ˜ ์ทจ๊ธ‰_์— ๊ด€ํ•˜์—ฌ...

์ด๋Ÿฌํ•œ ๊ฐ ํŒจํ‚ค์ง€๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค . ์ด๋Š” ๊ฐ๊ฐ์˜ ์ƒˆ ํŒจํ‚ค์ง€ ๋ฒ„์ „์ด ์—ฌ์ „ํžˆ ์ž๋™ํ™”๋œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ํ™•์ธ ๊ฒ€์‚ฌ์˜ ๋Œ€์ƒ์ž„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด ๋‹จ๊ณ„์—์„œ ์ƒˆ ํŒจํ‚ค์ง€ ๋ฒ„์ „์ด ์‹คํŒจํ•˜๋ฉด "๊ด€๋ฆฌ์ž๊ฐ€ ์ˆ˜์ • ์กฐ์น˜๋ฅผ ์ทจํ•˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ค‘" ์ƒํƒœ๋กœ ๋‹ค์‹œ ์ „์†ก๋ฉ๋‹ˆ๋‹ค. ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€์ด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ์ด ํŒจํ‚ค์ง€๋ฅผ ์Šน์ธํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆด ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์ค‘์žฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ›จ์”ฌ ๋นจ๋ฆฌ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž, ๊ฐ„๋‹จํžˆ ๋งํ•ด์„œ... ์ด ์ƒˆ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ํŒจํ‚ค์ง€์— ์ถ”๊ฐ€ํ•ด๋„ ์—ฌ๊ธฐ์—์„œ ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฐ ํŒจํ‚ค์ง€๋Š” ์—ฌ์ „ํžˆ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@rprouse @CharliePoole @ChrisMaddock ๋ฐฉ๊ธˆ ๋‹ค์Œ ํŒจํ‚ค์ง€๋ฅผ ์‚ดํŽด ๋ณด์•˜์Šต๋‹ˆ๋‹ค .

์ง€์› ์ค‘๋‹จ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด:

https://chocolatey.org/docs/how-to-deprecate-a-chocolatey-package

๋˜ํ•œ ํ•ด๋‹น ํŒจํ‚ค์ง€์— ์žˆ๋˜ ๋ชจ๋“  ์œ ์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋จธ์ง€ ์งˆ๋ฌธ์ด ์žˆ๊ฑฐ๋‚˜ ์ œ๊ฐ€ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ๋‹ค๋ฅธ ์‚ฌํ•ญ์ด ์žˆ์œผ๋ฉด ์•Œ๋ ค์ฃผ์„ธ์š”.

@gep13 ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” packaegs๊ฐ€ ๋‚˜์—๊ฒŒ ๋งž๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!

ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค, ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @gep13! ๋‚ด์ผ ๊ทธ๋ผ๋ฐ”ํƒ€๋ฅผ ๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ˜Š

๊ทธ๋ž˜์„œ!

  1. gravatar๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  nunit.org์˜ choco ํ”„๋กœํ•„์„ ์ฑ„์› ์Šต๋‹ˆ๋‹ค(https://chocolatey.org/profiles/nunit.org).
  2. @gep13 ์€ ์šฐ๋ฆฌ์˜ ๋ชจ๋“  ์ง€์› ์ค‘๋‹จ ๋ฐ ์‹ ๊ทœ ์œ ์ง€
  3. ์กฐ์ง์ด ์•„๋‹Œ NUnit ํŒจํ‚ค์ง€(https://github.com/Roemer/Chocolatey-Packages/issues/7) ์ค‘ ํ•˜๋‚˜๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฌธ์ œ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. @Roemer ๊ฐ€ ํŒจํ‚ค์ง€๋ฅผ ๊ทธ๋Œ€๋กœ ๋‘๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ• ์ง€ ์—ฌ๋ถ€๋Š”

๊ทธ๊ฒƒ์œผ๋กœ, ๋‚˜๋Š”์ด ๋ฌธ์ œ๋ฅผ ๋‹ซ์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค! ๐Ÿ˜„ ๋งŒ์„ธ!

WRT๊ฐ€ ํŒจํ‚ค์ง€์—์„œ ๋‚˜ ๋˜๋Š” Rob์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒฝ์šฐ NUnit ์กฐ์ง ID๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์ „์— WRT ํŒจํ‚ค์ง€ ๊ฒ€ํ† ๋ฅผ ๋ฐ›์€ ํŠน๋ณ„ํ•œ ์ฒ˜๋ฆฌ๋ฅผ ๊ณ„์† ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@CharliePoole @rprouse - @gep13 ์—์„œ ํŒจํ‚ค์ง€ ๊ฒ€ํ†  ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ทธ๋Œ€๋กœ

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ์€ ์šฐ๋ฆฌ๊ฐ€ Cake์—์„œ ํ•˜๋Š” ์ผ์ž…๋‹ˆ๋‹ค.

image

https://chocolatey.org/packages/cake.portable

cake-build ๊ณ„์ •์€ ๋ชจ๋“  ์‚ฌ๋žŒ์ด ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ์กฐ์ง ๊ณ„์ •์ด๋ฉฐ, ์‹ค์ œ๋กœ ์ƒˆ ํŒจํ‚ค์ง€๋ฅผ chocolatey.org์— ํ‘ธ์‹œํ•˜๋Š” ๊ณ„์ •์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ชจ๋“  ์œ ์ง€ ๊ด€๋ฆฌ์ž์˜ ๊ฐœ์ธ ๊ณ„์ •๋„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํŒจํ‚ค์ง€์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ž˜. ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ๋žŒ๋“ค์€ ์ž์‹ ์ด ๋ˆ„๊ตฌ์ธ์ง€ ์•Œ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋˜ํ•œ ์‚ฌ๋žŒ๋“ค์ด chocolatey.org์˜ ํŒจํ‚ค์ง€์™€ ๊ด€๋ จ๋œ "์ธํ„ฐ๋„ท ํฌ์ธํŠธ", ์ฆ‰ ๋‹ค์šด๋กœ๋“œ ์ˆ˜ ๋“ฑ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@gep13 ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์กฐ์ง์ ์œผ๋กœ ์–ด๋–ป๊ฒŒ ํ•˜๊ณ  ์‹ถ์€์ง€ ์ƒ๊ฐํ•ด ๋ณผ ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์•„์š”. ์ „ํ†ต์ ์œผ๋กœ ๋ชจ๋“  ๊ฒƒ์ด Charlie Poole์˜ ์ด๋ฆ„์œผ๋กœ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด์ œ ๊ทธ๋Ÿฐ ๊ณณ์—์„œ ์ข€ ๋” ๋ถ„์‚ฐ๋œ ์กฐ์ง์œผ๋กœ ์ด๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•ญ์ƒ ๋ชจ๋“  ๊ธฐํšŒ(์˜ˆ: ์ถœ์‹œ ๋ฐœํ‘œ)์— ๊ธฐ์—ฌ์ž์— ๋Œ€ํ•ด ์™ธ์น˜๋Š” Cake์˜ ํŒฌ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ ์ด์ƒ์„ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค! ๐Ÿ˜„

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰