ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง๊ฐ ๋์์๋ก ๋ฐฐํฌ๊ฐ ๋๋ ต์ง ์์ต๋๋ค
์ ๋ ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง(Unit Test Coverage)๋ ํ๋ก์ ํธ์ ์์ ์ฑ์ ๊ฐ๋ ํ๋ ๊ฐ์ฅ ๊ฐ๊ด์ ์ธ ์ฒ๋ ์ค ํ๋์ ๋๋ค. ์ฝ๋๋ฅผ ์์ ํ๊ฑฐ๋ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ ๋, ๊ธฐ์กด ๋ก์ง์ด ๋ง๊ฐ์ง์ง ์์๋์ง ํ์ธํด์ฃผ๋ '์์ ๊ทธ๋ฌผ' ์ญํ ์ ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ง์ ๊ฐ๋ฐ ํ์ด "๋ฐ์๋ค"๋ ์ด์ ๋ก ํ ์คํธ ์์ฑ์ ๋ฏธ๋ฃจ๊ณค ํ์ง๋ง, ์ด๋ ๊ฒฐ๊ตญ ์ด์ ํ๊ฒฝ์์์ ์น๋ช ์ ์ธ ์ฅ์ ์ ๊ทธ๋ก ์ธํ ์ผ๊ทผ์ด๋ผ๋ ๋ ํฐ ๋น์ฉ์ผ๋ก ๋์์ค๊ฒ ๋ฉ๋๋ค.
๋ณธ ์์ธก๊ธฐ๋ ์ํํธ์จ์ด ๊ณตํ์ ํต๊ณ์ ์๊ด๊ด๊ณ๋ฅผ ๋ฐํ์ผ๋ก ์ค๊ณ๋์์ต๋๋ค. ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง๊ฐ ๋ฎ์ ๊ตฌ๊ฐ(0~40%)์์๋ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ์กฐ๊ธ๋ง ๋์ฌ๋ ๋ฒ๊ทธ ๋ฐ๊ฒฌ ํ๋ฅ ์ด ๋น์ฝ์ ์ผ๋ก ์์นํฉ๋๋ค. ๋ฐ๋ฉด, ์ด๋ฏธ 80% ์ด์์ ๋์ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ํ๋ณดํ ์ํ์์๋ ๋๋จธ์ง 1%๋ฅผ ์ฑ์ฐ๊ธฐ ์ํ ๊ณต์๊ฐ ๊ธฐํ๊ธ์์ ์ผ๋ก ๋์ด๋๋ฉฐ, ๋ฒ๊ทธ ๊ฐ์ ํจ์จ์ ์๋์ ์ผ๋ก ๋ฎ์์ง๋๋ค. ์ด๋ฅผ '์ํ ์ฒด๊ฐ์ ๋ฒ์น'์ด๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
๋ฐ๋ผ์ ๋ฌด์กฐ๊ฑด 100%๋ฅผ ๋ชฉํ๋ก ํ๊ธฐ๋ณด๋ค๋, ์ฐ๋ฆฌ ์๋น์ค์ ์ฑ๊ฒฉ์ ๋ง๋ '๊ณจ๋ ์กด(Golden Zone)'์ ์ฐพ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ํต์ฌ ๋น์ฆ๋์ค ๋ก์ง์ 90% ์ด์, ๋จ์ UI ์ฐ๋ ๋ถ๋ถ์ 50% ์ ๋๋ก ์ฐจ๋ฑ์ ๋์ด ๊ด๋ฆฌํ๋ ๊ฒ์ด ํจ์จ์ ์ ๋๋ค. ์ด ๋๊ตฌ๋ฅผ ํตํด ํ์ฌ ์ฐ๋ฆฌ ํ์ ํ์ง ์์น๋ฅผ ํ์ ํ๊ณ , ๋ฌด๋ฆฌํ ๋ชฉํ๊ฐ ์๋ '์ง์ ๊ฐ๋ฅํ ํ ์คํธ ๋ฌธํ'๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํ ๊ทผ๊ฑฐ ์๋ฃ๋ก ํ์ฉํด ๋ณด์ธ์.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ (FAQ)
A: ์๋๋๋ค. '์๋ฏธ ์๋ ๋จ์ธ(Assertion)'์ผ๋ก ์ฑ์์ง ํ ์คํธ๋ ์ปค๋ฒ๋ฆฌ์ง ์ซ์๋ง ๋์ผ ๋ฟ ์ค์ ๋ฒ๊ทธ๋ฅผ ์ก์ง ๋ชปํฉ๋๋ค. ํ ์คํธ์ ์ง์ด ๋ณํ๋์ด์ผ ํฉ๋๋ค.
A: ์ด๊ธฐ ๊ตฌ์ถ ๋น์ฉ์ ๋ฐ์ํ์ง๋ง, ์๋ ํ ์คํธ์ ๋๋ ์ธ๊ฑด๋น์ ์ฅ์ ๋์ ๋น์ฉ์ ๊ณ ๋ คํ๋ฉด ์ฅ๊ธฐ์ ์ผ๋ก๋ ๋ฐ๋์ ์ด๋์ด ๋ฉ๋๋ค.
A: TDD๋ ์์ฐ์ค๋ฝ๊ฒ ๋์ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ์ ์งํ๊ฒ ํด์ฃผ์ง๋ง, ํ์ ์๋ จ๋์ ๋ฐ๋ผ ์ ํ์ ์ผ๋ก ๋์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ฌํ ํ ์คํธ ์์ฑ๋ง์ผ๋ก๋ ์ถฉ๋ถํ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.