๐ ๋ชฉ์ฐจ
- ์๋ก
- TDD๋ฅผ ํ๋ฉด์ ๊ฒช์๋ ์ด๋ ค์๋ค
- TDD๋ฅผ ํ๋ฉด์ ์ข์๋ ์ ๋ค
- ๊ฒฐ๋ก
๐ ์๋ก
์ด๋ฒ ํฌ์คํ ์์๋ ๊ทธ๋์ ๋ค๋ค๋ tdd์ ๊ดํด ํ๊ณ ํด๋ณด๋ ํฌ์คํ ์ ๋๋ค. ๊ฐ์ธ์ ์ผ๋ก tdd๋ฅผ ํ๋ฉด์ ๊ฒช์๋ ์ด๋ ค์๋ค ๊ทธ๋ฆฌ๊ณ ๋๊ผ๋ ์๊ฐ๋ค์ ์ ๋ฆฌํด ๋ณด๋ ํฌ์คํ ์ ๋๋ค.
๐ TDD๋ฅผ ํ๋ฉด์ ๊ฒช์๋ ์ด๋ ค์๋ค
TDD๋ฅผ ํ๋ฉด์ ๊ฒช์๋ ์ด๋ ค์๋ค์ ๋ค์ ์ธ๊ฐ์ง๊ฐ ์์ต๋๋ค.
- ์ด๋๊น์ง test๋ฅผ ํด์ผํ ๊น?
- ์ด๋ป๊ฒ ํ๋ฉด ์์กด์ฑ์ ์ค์ผ ์ ์์๊น?
- testcase๊ฐ ์๋ชป ๋๋ฉด ์ด์ฉ์ง?
1. ์ด๋๊น์ง test๋ฅผ ํด์ผํ ๊น?
๋ชจ๋ ์ฝ๋๋ฅผ test code๋ก ์ปค๋ฒํ๋ค๋ ๊ฒ์ ๋งค์ฐ ์ด๋ ต๊ณ ๋น์์ฐ์ ์ธ ์ผ์ ๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์ด๋๊น์ง testcode๋ฅผ ์์ฑ์ ํด์ผํ ๊น์? ์ด๋ ๋ถ๋ถ์์ ์ค์๊ฐ ๊ฐ์ฅ ๋ง์ด ๋ ๊น์? ์ด๋ฐ๊ฒ๋ค์ ์ด์ฉ์ ์๋ ๊ฒฝํ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋์ testcode๋ฅผ ์ฒ์์๋ ๊ณต๋ถํ๋ฏ์ด ๋ชจ๋ ๊ฒ์ ํ ์คํ ํด๋ณด๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ฐ๊ณ ์ ์ฐจ ์ด๋ฐ ๋ถ๋ถ์ ๊ตณ์ด ํด์ผํ ๊น? ์ด๋ฐ ๋ถ๋ถ์์๋ test๊ฐ ํ์์์๊ฑฐ ๊ฐ์. ๋ผ๊ณ ํ๋ ๋ถ๋ถ์ด ์๊ธฐ๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ผ ๊ทธ๋ ์ฐจ๊ทผํ ์ค์ฌ๋๊ฐ๊ณ ์ ๋ง ํ์ํ ๋ถ๋ถ๋ค์ test๋ฅผ ํ๋ ๊ฒฝํ์ด ํ์ํฉ๋๋ค.
2. ์ด๋ป๊ฒ ํ๋ฉด ์์กด์ฑ์ ์ค์ผ ์ ์์๊น?
ํ
์คํธ๋ฅผ ํ๋ฉด์ ๊ฐ์ฅ ํฌ๊ฒ ๊ณ ๋ฏผ์ ํ๋ ๋ถ๋ถ๋ค์ ์ต๋ํ ๊ฒฝ๋ํ ํ์ฌ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์ด๋ ๊ธฐ์กด์ test๊ฐ ๊นจ์ง์ง ์๊ฒ ํ๋ ๊ฒ์
๋๋ค. ๋๋ฌด ์์ ๋จ์๋ก ์ชผ๊ฐ์ง๋ฉด testcode๋ง ๋ง์์ง ๋ฟ ์๋๋ผ ๊ฐ๋
์ฑ์ด ๋๋ฌด ๋จ์ด์ง๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค. ๊ทธ๋์ ์ด๋ถ๋ถ ๋ํ ๊ฒฝํ์ ์ํ...
์ด๋ผ๊ณ ๋ง์ ํ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค...๐ญ
3. testcase๊ฐ ์๋ชป ๋๋ฉด ์ด์ฉ์ง?
์๋ชป๋ ํน์ ์ปค๋ฒํ์ง ๋ชปํ๋ testcase๊ฐ ์์ ์ ์์ต๋๋ค. ์ด๋ ๋ด๊ฐ ์ง test code๋ ์ผ๋ง๋ ์ ๋ขฐํ ์ ์๋๋ ๋ผ๋ ๋ฌธ์ ์ ์ง๋ฉด ํ๊ฒ ๋ฉ๋๋ค. ์ด๋ถ๋ถ๋ ๊ฒฝํ์ ์ํด ์์ฌ๊ฐ์ผ ํ๋ ๋ถ๋ถ์ธ ๊ฒ ๊ฐ์ต๋๋ค. ์ ๊ฐ์ ๊ฒฝ์ฐ ์คํ์์ค์ ๋ค๋ฅธ ์ฌ๋๋ค์ด ์ง๋ ผ test code๋ฅผ ํ๋ฒ์ฉ ๋ณด๋ ๊ฒ ์ด๋ค ์์ผ๋ก ํ ์คํธ๋ฅผ ํ๋๋ฅผ ๊ฒฝํํด๋ณด๋ฉด์ ์๊ธฐ ๊ฒ์ ํ๋ํ๋ ์ ์ฉํด๊ฐ ๋ณด๋๊ฒ ์ ๋๋ค.
๐ TDD๋ฅผ ํ๋ฉด์ ์ข์๋ ์ ๋ค
TDD๋ฅผ ํ๋ฉด์ ๊ฐ์ฅ ์ข์๋ ์ ์ ์ฝ๋๊ฐ ์ ๋์ด ๋๋ ๊ฒ ๊ทธ๋ฆฌ๊ณ debugํ๋ ์๊ฐ์ด ๊ธฐํ๊ธ์์ ์ผ๋ก ์ค์๋ค๋ ๊ฒ ์ ๋๋ค. ์ด๋ฐ์๋ test case๋ฅผ ์ง๋ณด๋๋ผ ๊ฐ๋ฐ ์๊ฐ์ด ๋์ด๋ฌ์ง๋ง ์ ์ฒด์ ์ผ๋ก๋ debugํ๋ ์๊ฐ์ด ์ค์๊ธฐ์ ๊ฐ๋ฐ ์๊ฐ์ด ์ค์์ต๋๋ค. ์ด๋ถ๋ถ์ ๊ต์ฅํ ์ข์์ต๋๋ค.
๋ํ ์๊ธฐ์์ ์ ๋ํ ๋์ ์๋ ๋์ ์ ๋๋ค. ํ ์คํธ ์ฝ๋๋ฅผ ์ง๋ฉด์ ํ๋ค๋ณด๋ ์์ฐ์ค๋ ์๊ธฐ ์์ ์๊ฒ ๋ถ์กฑํ ๋ถ๋ถ๋ค์ด ๋ณด์์ต๋๋ค. ์ฝ๋์ ๊ฐ๊ฒฐ์ฑ, ๋ ผ๋ฆฌ์ ํ๋ฆ, ๋์์ธ ํจํด ๋ฑ ๋์์์ด ๋ถ์กฑํ ๋ถ๋ถ๋ค์ด ๋ณด์ด๊ณ , ์ด๋ถ๋ถ์ ์ด๋ ๊ฒ ๋ ๊ฐ์ํํ ์ ์์ง ์์๊น? ํ๋ฉด์ ์๊ทน์ด ๋ง์ด ๋์๋๊ฑฐ ๊ฐ์ต๋๋ค.
๐ ๊ฒฐ๋ก
TDD๊ฐ ๋ง๋ฅ์ด๋ผ๊ณ ์๊ฐํ์ง๋ ์์ต๋๋ค. ๋ ์ข์ ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก ์ด ์์์๋ ์๊ณ ์ํฉ์ ๋ฐ๋ผ TDD๋ฅผ ํ๋ ๊ฒ๋ณด๋ค ๋ค๋ฅธ ๋ฐฉ๋ฒ๋ก ์ ํ๋ ๊ฒ์ด ๋ ์ข์ ์๋ ์์ต๋๋ค. ํนํ view์ ๊ดํ ๋ถ๋ถ์ testing์ ํ๋ ๊ฒ์ด ๊ณผ์ฐ ์ณ์ ์ผ์ผ๊น? ์ฌ๋์ ๋์ด ๋ ์ข์๊ฑฐ ๊ฐ์๋ฐ... ๋ผ๊ณ ์๊ฐ์ ํ๋ ์ ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ view๋ฅผ ํ ์คํ ํ๋ ๋ถ๋ถ์ ๋ํด์๋ ์์ง๊น์ง๋ testing์ ํ๊ธฐ ๋ณด๋ค ์ง์ ํ๋ฒ ๋ ๋ณด๋ ๊ฒ์ด ๋ง๋ค๊ณ ํ๋จ์ด ๋์ด์ง๊ธฐ๋ ํฉ๋๋ค. ํ์ง๋ง ๋ง์ ๋ถ๋ถ TDD๋ ์ ๋ง ์ข์ ๋ฐฉ๋ฒ๋ก ์ด์๊ณ ์ด ๋ฐฉ๋ฒ๋ก ์ ์ฌ์ฉํ์ฌ ๋ง์ ์๊ฐ์ ๋ฐ์์์ต๋๋ค. ๊ทธ๋์ ์ด๊ธ์ ํตํด ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค์ด ์ ๊ฐ ๋๊ฒผ๋ ๊ฒฝํ๋ค๊ณผ ์๊ฐ์ ์ป์ด ๋๋ง์ ์ข์ TDD์ ๊ดํด ํ ๋ก ํ๋ ์ฅ์ด ์์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค. ๊ทธ๋์ Vue - TDDํธ์ ์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
'Vue TDD' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Vue TDD - ๋ฒ์ธ2 (mixins tesing) (0) | 2020.09.23 |
---|---|
Vue TDD - ๋ฒ์ธ1 (Test Double) (0) | 2020.08.22 |
Test code ์ฝ๊ฒ ์ฐ๊ธฐ - 1 (0) | 2020.08.06 |
Vue TDD - E2E ํธ (0) | 2020.08.02 |
Vue TDD - Storybook ํธ (0) | 2020.07.31 |