Service์ ์๋ ๋ฉ์๋๋ฅผ ํ
์คํธํ๊ณ ์ถ์๋ฐ public์ผ๋ก ๋์ด์๋ ์ ์ฒด ๋ก์ง์ด ์๋ private์ผ๋ก ๋ ๊ธฐ๋ฅ์ด ๋๋์ด์ง ๋ฉ์๋์ ๊ธฐ๋ฅ๊ฒ์ฆ์ ํ๊ณ ์ถ๋ค. ๊ทธ๋์ public์ผ๋ก ๋ณ๊ฒฝํด์ ํ
์คํธ์ฝ๋๋ฅผ ์์ฑํ๋๋ฐ ์ฐพ์๋ณด๋ ํ
์คํธ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ํด ServiceImpl ํด๋์ค ๋ด์ ์ธํฐํ์ด์ค์ ์ ์๋์ง ์์ public ๋ฉ์๋๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ํผํด์ผ ํ ์ฌํญ์
๋๋ค. ์ธํฐํ์ด์ค๋ ํน์ ๊ณ์ฝ(Contract)์ ์ ์ํ๊ณ , ์ด๋ฅผ ๊ตฌํํ๋ ํด๋์ค๋ค์ ํด๋น ๊ณ์ฝ์ ์ง์ผ์ผ ํฉ๋๋ค. ๋ง์ฝ ์ธํฐํ์ด์ค์ ์ ์๋์ง ์์ ๋ฉ์๋๋ฅผ ํด๋์ค ๋ด์์ ์ถ๊ฐํ๋ค๋ฉด, ์ฝ๋์ ์ผ๊ด์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ด ์ ํ๋ ์ ์์ต๋๋ค. ๋ผ๊ณ ํ๋ค. ๋ง๋ ๋ง์ธ๋ฐ ๊ทธ๋ ๋ค๋ฉด ์ด๋ป๊ฒ ํ
์คํธํ๋ ๊ฒ ์ข์๊น? Reflection ๋ฆฌํ๋ ์
์ถ์ฒํ๋ ..
๐ TESTING
ํ
์คํธ์ฝ๋๋ฅผ ์์ฑํ๋ฉด์ ๋ฐํ๊ฐ ์๋ ๋ฉ์๋๋ฅผ ํ
์คํธํด์ผํ ๊ฒฝ์ฐ๊ฐ ์๊ฒผ๋ค. ์ด ๋ฉ์๋๋ Message๋ฅผ ๋ณด๋ด๋ ๊ธฐ๋ฅ์ ํ๋ ๋ฉ์๋์ด๊ธฐ ๋๋ฌธ์ ๋ด๋ถ์์ ๋ฉ์ธ์ง๋ฅผ ๋ณด๋ด๊ณ , ๋ก๊ทธ ์ ์ฅ ํ ๋ฐํํ๋ ๊ฐ์ด ์๋ค. ๋๋ ์ด ๋ด๋ถ์์ ๋ฐ์ดํฐ ์ ์ ๊ฐ ๋๋ ํ ๋ง์ง๋ง์ private send(RequestDto request) ์ ์ ๋ฌ๋๋ RequestDto ๋ฅผ ์๊ณ ์ถ์๋ค. private sendMessageList(){ // ๋ฐ์ดํฐ ์ ์ send(reqeust); } private send(RequestDto request){ // ์ค์ ๋ก ์ ์ก } ์ด๋, ArgumentCaptor ๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค. @Test void sendMessageTest() { sendService.sendMessageList(new Oth..
๋๊ตฌ ์ฌ์ฉ๋ฒ ์ค์ฌ์ด ์๋๋ผ ํ
์คํธ ๋์
์ ํ์์ฑ, ๋น์ฉ ์ธก๋ฉด์ ์ฌ๋ก์ ํจ๊ป ํ์ด๊ฐ๊ณ ์๋ค. ํ
์คํธ ๋๊ตฌ๋ ์ฌ์ฉ๋ฒ์ ์ตํ๋ฉด ๋๋ค. ํ์ง๋ง ์ ์ฌ์ฉํด์ผ ํ๋์ง ์ด๋ค ์ผ์ด์ค์์ ์ฌ์ฉํด์ผ ํ๋์ง๋ฅผ ๊นจ๋ฌ์์ผ ์ ๋ง ํ์ํ ํ
์คํธ ์ผ์ด์ค๋ฅผ ์์ฑํ ์ ์๊ณ ์ง์์ ํ
์คํธ๋ฅผ ์ ์งํ ์ ์๋ค. ์ฌ๋ฏธ์จ,,ใ