4์ฃผ์ฐจ ์นด์นด์ค ํ
ํฌ ์บ ํผ์ค 2๋จ๊ณ - BE - 4์ฃผ์ฐจ ํด๋ก ๊ณผ์ ๊ณผ์ ๋ช
1. ์ปจํธ๋กค๋ฌ ๋จ์ ํ
์คํธ ๊ณผ์ ์ค๋ช
1. ์ปจํธ๋กค๋ฌ ๋จ์ํ
์คํธ๋ฅผ ์์ฑํ๋ค ์์ค์ฝ๋๋ฅผ ์
๋ก๋ํ์์ค. 2. stub์ ๊ตฌํํ์์ค. ๊ณผ์ ์์ธ : ๊ณผ์ ๋ฅผ ์งํํ ๋, ์ ๋
ํด์ผํ ๊ฒ ์ปจํธ๋กค๋ฌ ๋จ์ํ
์คํธ๊ฐ ๊ตฌํ๋์๋๊ฐ? Mockito๋ฅผ ์ด์ฉํ์ฌ stub์ ๊ตฌํํ์๋๊ฐ? ์ธ์ฆ์ด ํ์ํ ์ปจํธ๋กค๋ฌ๋ฅผ ํ
์คํธํ ์ ์๋๊ฐ? 200 ok๋ง ์ฒดํฌํ ๊ฒ์ ์๋๊ฐ? (ํด๋น ์ปจํธ๋กค๋ฌ์์ ์ ์ผ ํ์ํ ๋ฐ์ดํฐ์ ๋ํ ํ
์คํธ๊ฐ ๊ตฌํ๋์๋๊ฐ?) ๋ชจ๋ ์์ฒญ๊ณผ ์๋ต์ด json์ผ๋ก ์ฒ๋ฆฌ๋์ด ์๋๊ฐ? ๐ ๋ฐฐ๊ฒฝ ์ง์ Open In View ์ดํด (= OSIV) "Open in View" : ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํธ๋์ญ์
์ ๋ทฐ(View)๊ฐ ๋ ๋๋ง๋๋ ์์ ๊น์ง ์ฐ์ฅํ๋ ๊ฒ์ ์๋ฏธ ์ ํต์ ..
3์ฃผ์ฐจ ์นด์นด์ค ํ
ํฌ ์บ ํผ์ค 2๋จ๊ณ - BE - 3์ฃผ์ฐจ ํด๋ก ๊ณผ์ ๊ณผ์ ๋ช
1. ๋ ํฌ์งํ ๋ฆฌ ๋จ์ํ
์คํธ ๊ณผ์ ์ค๋ช
1. ๋ ํฌ์งํ ๋ฆฌ ๋จ์ํ
์คํธ๋ฅผ ๊ตฌํํ์ฌ ์์ค์ฝ๋๋ฅผ ์ ์ถํ์์ค. 2. ์ฟผ๋ฆฌ๋ฅผ ํ
์คํธํ๋ฉด์ ๊ฐ์ฅ ์ข์ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํด๋ณด์์ค. ๊ณผ์ ์์ธ : ์๊ฐ์๋ค์ด ๊ณผ์ ๋ฅผ ์งํํ ๋, ์ ๋
ํด์ผํ ๊ฒ ์๋ ํญ๋ชฉ์ ๋ฐ๋์ ํฌํจํ์ฌ ๊ณผ์ ์ํํด์ฃผ์ธ์! ๋ ํฌ์งํ ๋ฆฌ ๋จ์ํ
์คํธ๊ฐ ๊ตฌํ๋์๋๊ฐ? ํ
์คํธ ๋ฉ์๋๋ผ๋ฆฌ ์ ๊ธฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ง ์์๋๊ฐ? (ํ
์คํธ๋ ๊ฒฉ๋ฆฌ์ฑ์ด ํ์ํ๋ค) Persistene Context๋ฅผ clearํ์ฌ์ ํ
์คํธ๊ฐ ๊ตฌํ๋์๋๊ฐ? (๋๋ฏธ๋ฐ์ดํฐ๋ฅผ JPA๋ฅผ ์ด์ฉํด์ insert ํ ์์ ์ธ๋ฐ, ๋ ํฌ์งํ ๋ฆฌ ํ
์คํธ์์ ์์ํ๋ ๋ฐ์ดํฐ ๋๋ฌธ์ ์ฟผ๋ฆฌ๋ฅผ ์ ๋๋ก ๋ณด์ง ๋ชปํ ์ ์๊ธฐ ๋๋ฌธ์) ํ
์คํธ ์ฝ๋์ ์ฟผ๋ฆฌ ๊ด๋ จ๋ ๋ฉ์๋๊ฐ ๋๋ฌด..
2. Mock API Controller ๊ตฌํ 02) ๊ฐ์ง ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํ์ฌ ์๋ตํ๋ ์คํ๋ง๋ถํธ ์ปจํธ๋กค๋ฌ๋ฅผ ์์ฑํ๊ณ ์์ค์ฝ๋๋ฅผ ์
๋ก๋ํ์์ค. ์นดํ
์ผ์ ์งํํ๋ฉด์ controller์ DTO ๋ฑ์ ๋ฐฐ์ฐ๊ธด ํ์์ง๋ง, ์ ๋ง ํํ ์ง๋๊ฐ๋ ์ ๋๋ก๋ง ๊ณต๋ถํ์๊ธฐ ๋๋ฌธ์ ๊ณ ๋ ค์ฌํญ๋ค์ ์ด๋ป๊ฒ ๊ตฌํํ๋์ง, ์ด๋ค ๋ฐฉ์์ผ๋ก ๋ก์ง์ ์ง์ผ ํจ์จ์ ์ธ์ง ๋ฑ์ ๋ฌธ์ ๋ ์ ์ณ๋๊ณ ๊ธฐ์กด์ ์ฝ๋๋ฅผ ์ดํดํ๊ณ ํ๋ฌ์ค๋ก ํ์ํ ๋ถ๋ถ๋ง ๊ตฌํํ๋ ์์ผ๋ก ๊ณผ์ ๋ฅผ ์ํํด๋ณด๋ ค๊ณ ํ๋ค. Mock : ์ค์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด ์ฌ์ฉํ๊ธฐ์ ์๊ฐ, ๋น์ฉ ๋ฑ์ Cost๊ฐ ๋๊ฑฐ๋ ํน์ ๊ฐ์ฒด ์๋ก๊ฐ์ ์์กด์ฑ์ด ๊ฐํด ๊ตฌํํ๊ธฐ ํ๋ค ๊ฒฝ์ฐ ๊ฐ์ง ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ๊ฐ์ง ๋ฐ์ดํฐ (dummy data) : ์ ์ฉํ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋์ง ์์ง๋ง ๊ณต๊ฐ์ ์๋นํด๋์ด ์ค์ ๋ฐ์ดํฐ๊ฐ ๋ช
..
๊ณผ์ ๋ช
1. ์ ์ฒด API ์ฃผ์ ์ค๊ณ 2. Mock API Controller ๊ตฌํ ๊ณผ์ ์ค๋ช
1. API์ฃผ์๋ฅผ ์ค๊ณํ์ฌ README์ ๋ด์ฉ์ ์์ฑํ์์ค. 2. ๊ฐ์ง ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํ์ฌ ์๋ตํ๋ ์คํ๋ง๋ถํธ ์ปจํธ๋กค๋ฌ๋ฅผ ์์ฑํ๊ณ ์์ค์ฝ๋๋ฅผ ์
๋ก๋ํ์์ค. ๊ณผ์ ์์ธ : ๊ณผ์ ๋ฅผ ์งํํ ๋, ์ ๋
ํด์ผํ ๊ฒ ์ ์ฒด API ์ฃผ์ ์ค๊ณ๊ฐ RestAPI ๋ง๊ฒ ์ค๊ณ๋์๋๊ฐ? (์๋ฅผ ๋ค์ด ๋ฐฐํฌ๋ ์๋ฒ๋ POST์ GET์ผ๋ก๋ง ๊ตฌํ๋์๋๋ฐ, ํ์๋ค์ PUT๊ณผ DELETE๋ ๋ฐฐ์ธ ์์ ์ด๋ผ ์ด๋ถ๋ถ์ด ๋ฐ์๋์๊ณ , ์ฃผ์๊ฐ RestAPI์ ๋ง๊ฒ ์ค๊ณ๋์๋์ง) ๊ฐ์ง ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํ์ฌ Mock API๋ฅผ ์ ๊ตฌํํ์๋๊ฐ? (์๋ฅผ ๋ค์ด DB์ฐ๊ฒฐ์์ด ์ปจํธ๋กค๋ฌ๋ง ๋ง๋ค์ด์ ๋ฐฐํฌ๋ ์๋ฒ์ ์๋ต๊ณผ ๋์ผํ ํํ๋ก ๋ฐ์ดํฐ๊ฐ ์๋ต๋๋์ง ์ฌ๋ถ) 1. ์ ์ฒด API..