- ์ํํธ์จ์ด ๊ฐ๋ฐ์์ ํ ์คํ ์ ์ค์์ฑ์ ๊ฐ์กฐํ๋ฉฐ, ํนํ Unit Testing, Integration Testing, End-to-End Testing์ ์ธ ๊ฐ์ง ์ ํ์ ์๊ฐํฉ๋๋ค. ๐งช
- JUnit 5์ Mockito๋ฅผ ์ฌ์ฉํ์ฌ Spring Boot ์ ํ๋ฆฌ์ผ์ด์ ์ Unit Testing์ ์ํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ค๋ช ํฉ๋๋ค. ๐ ๏ธ
- Testcontainers๋ฅผ ํ์ฉํ Integration Testing์ ์ด์ ๊ณผ ์ปจํธ๋กค๋ฌ ํ ์คํธ ๋ฐฉ๋ฒ์ ๋ํด ์๊ฐํฉ๋๋ค. ๐ณ
- CI/CD ํ์ดํ๋ผ์ธ ์ค์ , ์ ํ๋ฆฌ์ผ์ด์ Dockerizing, ์ค์ VPS ์๋ฒ ๋ฐฐํฌ ๋ฑ ๊ณ ๊ธ ์ฃผ์ ๋ฅผ ๋ค๋ฃฐ ์์ ์์ ๋ฐํ๋๋ค. โ๏ธ
- Spring Boot ํ๋ก์ ํธ์์ ํ ์คํธ ๊ตฌ์ฑ์ ์ดํดํ๊ณ , ํ ์คํธ ํด๋์ค๋ฅผ ์์ฑํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ(์๋ ๋ฐ ์๋ ์์ฑ)์ ์ค๋ช ํฉ๋๋ค. ๐๏ธ
- Mockito Extension์ ์ฌ์ฉํ์ฌ Mock ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ์ฃผ์ ํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ฉฐ, ํ ์คํธ ์คํ ์ Display Name์ ์ค์ ํ์ฌ ํ ์คํธ ๊ฒฐ๊ณผ๋ฅผ ๋ช ํํ๊ฒ ํ์ํ๋ ๋ฐฉ๋ฒ์ ์๋ดํฉ๋๋ค. ๐ท๏ธ
- ํ ์คํธ ํํฐ๋ง ์ต์ (์ฑ๊ณต, ์คํจ, ๋นํ์ฑํ ํ ์คํธ ํ์)๊ณผ ์๋ ์ฌ์คํ ๊ธฐ๋ฅ ๋ฑ ํ ์คํธ ์คํ ํ๊ฒฝ ์ค์ ์ ๋ํ ์ ์ฉํ ํ์ ์ ๊ณตํฉ๋๋ค. โ๏ธ
- ํ ์คํธ ์์ฑ์ ์ํ ์ฌ์ ๋จ๊ณ๋ก, ํ ์คํธํ ํด๋์ค์ ์์กด์ฑ์ ํ์ ํ๊ณ Mockito๋ฅผ ์ฌ์ฉํ์ฌ Mock ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค. ๐งฉ
- Nested Class๋ฅผ ์ฌ์ฉํ์ฌ ํ ์คํธ ์๋๋ฆฌ์ค๋ฅผ ๊ทธ๋ฃนํํ๊ณ , @Nested ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํ์ฌ Nested Class ๋ด์ ํ ์คํธ๋ฅผ ์คํํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํฉ๋๋ค. ๐ฆ
- create to-do ์๋๋ฆฌ์ค์์ ์ ์์ ์ธ ๊ฒฝ์ฐ, entity not found exception์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ, category ID๊ฐ null์ธ ๊ฒฝ์ฐ ๋ฑ ๋ค์ํ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์๋ณํ๊ณ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค. ๐ก





