๋จ์ ํ ์คํธ vs. ํตํฉ ํ ์คํธ
โ ๋จ์ ํ ์คํธ(Unit Test)
๋จ์ ํ ์คํธ๋ ํ๋์ ๋ชจ๋์ ๊ธฐ์ค์ผ๋ก ๋ ๋ฆฝ์ ์ผ๋ก ์งํ๋๋ ๊ฐ์ฅ ์์ ๋จ์์ ํ ์คํธ์ด๋ค. ์๋ฅผ ๋ค์ด ์น ์ ํ๋ฆฌ์ผ์ด์ ์์๋ ํ๋์ ๊ธฐ๋ฅ ๋๋ ๋ฉ์๋์ ๋ํด ์ฌ๋ฐ๋ฅด๊ฒ ๋์ํ๋์ง ๋ ๋ฆฝ์ ์ผ๋ก ํ ์คํธํ๋ ๊ฒ์ด ํ๋์ ๋จ์ ํ ์คํธ์ด๋ค.
โ ํตํฉ ํ ์คํธ(Integration Test)
ํตํฉ ํ ์คํธ๋ ๋ชจ๋์ ํตํฉํ ๋ ๋ชจ๋ ๊ฐ์ ํธํ์ฑ์ ํ์ธํ๊ธฐ ์ํด ์ํํ๋ ํ ์คํธ์ด๋ค. ํตํฉ๋ ๋ชจ๋๋ค์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ฐ๊ณ๋์ด ๋์ํ๋์ง ๊ฒ์ฆํ๋ค.
ํตํฉ ํ ์คํธ๋ ์ฌ๋ฌ ์ปดํฌ๋ํธ ๊ฐ์ ์ํธ์์ฉ์ ํ์ธํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์์คํ ์ ๊ตฌ์ฑํ๋ ์ปดํฌ๋ํธ์ ๊ด๋ จ๋ ํ๊ฒฝ์ด ๋ชจ๋ ์ธํ ๋์ด์ผ ํด์(DB, Chche ๋ฑ) ํ ์คํธ๋ฅผ ์ํ ๋น์ฉ์ด ์ปค์ง๋ค. ๋ฐ๋ผ์ ์ค๋ฌด์์๋ ๋จ์ ํ ์คํธ๋ฅผ ๋ง์ด ํ์ฉํ๊ฒ ๋๋๋ฐ ๋จ์ ํ ์คํธ๋ ํด๋น ๊ธฐ๋ฅ์ ๋ํด์๋ง ๋ ๋ฆฝ์ ์ผ๋ก ํ ์คํธ ํ๊ธฐ ๋๋ฌธ์ ๋น ๋ฅด๊ฒ ๋ฌธ์ ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์๋ค.
ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ฉด ๊ฐ๋ฐํ ์ฝ๋๋ค์ ๋ํด ์์๋ก ๋น ๋ฅด๊ฒ ๊ฒ์ฆํ ์ ์์ด ๊ฒฐ๊ณผ์ ์ผ๋ก ๊ฐ๋ฐ ๋ฐ ํ ์คํธ์ ๋ํ ์๊ฐ๊ณผ ๋น์ฉ์ ์ ๊ฐํ ์ ์๋ค.
TDD
Test Driven Development, ํ ์คํธ ์ฃผ๋ ๊ฐ๋ฐ์ด๋ผ๊ณ ํ๋ ๋ฐ๋ณต ํ ์คํธ๋ฅผ ์ด์ฉํ ์ํํธ์จ์ด ๋ฐฉ๋ฒ๋ก ์ด๋ค.
์ผ๋ฐ์ ์ธ ๊ฐ๋ฐ ๋ฐฉ์๊ณผ์ ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ ๋ค์ ์ค์ ์ฝ๋๋ฅผ ์์ฑํ๋ค๋ ์ ์ด๋ค.
TDD์์๋ ์์ ๋จ์์ ํ ์คํธ ์ผ์ด์ค๋ฅผ ๋จผ์ ์์ฑํ๊ณ ์ด๋ฅผ ํต๊ณผํ๋ ์ฝ๋๋ฅผ ์ถ๊ฐํ๋ ์๋์ ๋จ๊ณ๋ฅผ ๋ฐ๋ณตํ์ฌ ๊ตฌํํ๋ค.
โ ์คํจํ๋ ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ค.
โก ํ ์คํธ ์ฝ๋๋ฅผ ์ฑ๊ณต์ํค๊ธฐ ์ํ ์ค์ ์ฝ๋๋ฅผ ์์ฑํ๋ค.
โข ์ค๋ณต ์ฝ๋๋ฅผ ์ ๊ฑฐํ๊ณ ๋ฆฌํฉํ ๋ง์ ์ํํ๋ค.
ํ ์คํธ ์ฝ๋๋ฅผ ๋จผ์ ์์ฑํด์ผ ํ๋ ์ ์ด ๊ท์ฐฎ๊ณ ์คํ๋ ค ๋๋ฆฌ๊ฒ ์งํ๋๋ ๊ฒ ๊ฐ๋ค๋ ๋๋์ผ ์ ์์ง๋ง, ์ฅ๊ธฐ์ ์ผ๋ก๋ ๋ณ๊ฒฝ๋๋ ์๊ตฌ์ฌํญ์ ๋์ฒํ๊ธฐ๋ ์ฝ๊ณ ๋จ์ ๋ณ๋ก ํ ์คํธ๊ฐ ์ฉ์ดํด ๊ฐ๋ฐ ๋น์ฉ์ ์๊ปด์ค ๊ฒ์ด๋ค.
์ฐธ๊ณ ์๋ฃ ๋ฐ ์ถ์ฒ ๐โ๏ธ
https://mangkyu.tistory.com/143
'๊ฐ๋ฐ ํ > ์๋น์ค & ์ํคํ ์ฒ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
DevOps (0) | 2022.03.23 |
---|---|
ํ๋์จ์ด ๊ฐ์ํ ์ข ๋ฅ (0) | 2022.03.22 |
docker (0) | 2022.03.11 |
SOA (Service Oriented Architecture) (0) | 2022.03.08 |
MSA (MicroService Architecture) (0) | 2022.03.08 |
๋๊ธ