Reflection์œผ๋กœ ์ฃผ์ž…ํ•œ ID๊ฐ€ null์ด ๋˜๋Š” ์ด์œ ์™€ ํ•ด๊ฒฐ๋ฒ•
ยท
๋‚ด์ผ๋ฐฐ์›€์บ ํ”„/ํ”„๋กœ์ ํŠธ
1. ๋ฌธ์ œ ์ •์˜ํ…Œ์ŠคํŠธ ์ฝ”๋“œ์—์„œ movie.getId()์— 1L์„ ์ฃผ์ž…ํ–ˆ์ง€๋งŒ, movieService.saveMovie(user, dto)๋ฅผ ์‹คํ–‰ํ•œ ๋’ค result.getMovieId()๊ฐ€ null๋กœ ๋‚˜์˜ค๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ๐Ÿคฏ ๐Ÿคฏ 2. ์›์ธ ๋ถ„์„ Movie movie = new Movie(user, dto);ReflectionTestUtils.setField(movie, "id", 1L);System.out.println(">>> ๋ฆฌํ”Œ๋ ‰์…˜ ์ดํ›„ movie.getId() = " + movie.getId());given(movieRepository.save(any())).willReturn(movie);//whenMovieResponseDto.create result = movieService.save..
๋ฐฐ๋‹ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„์›ƒ์†Œ์‹ฑ ํ”„๋กœ์ ํŠธ ํšŒ๊ณ 
ยท
๋‚ด์ผ๋ฐฐ์›€์บ ํ”„/ํ”„๋กœ์ ํŠธ
1๏ธโƒฃ ๋ฐฐ๋‹ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„์›ƒ์†Œ์‹ฑ ํ”„๋กœ์ ํŠธ ํšŒ๊ณ  (ToAnyone๐Ÿซ‚)ํ”„๋กœ์ ํŠธ๋ช…: ๋ˆ„๊ตฌ๋“ ์ง€(to anyone), ์–ด๋””์„œ๋“ ์ง€ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ฐฐ๋‹ฌ ์„œ๋น„์Šค!ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„: 2025.04.22 ~ 2025.04.29๋ชฉํ‘œ๋ฐฐ๋‹ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„์›ƒ์†Œ์‹ฑ ํ”„๋กœ์ ํŠธ ๋ฌด์‚ฌํžˆ ๋งˆ๋ฌด๋ฆฌํ•˜๊ธฐ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ด€๊ด€๊ณ„ ์„ค์ •, AOP ๊ธฐ๋ฐ˜ ๋กœ๊น…, ์‘๋‹ต ํ†ต์ผํ™”๋ฅผ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.JUnit·Mockito๋กœ ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ 30%๋ฅผ ๋ชฉํ‘œ๋กœ ํ–ˆ๊ณ , GitHub๋กœ ์ฒด๊ณ„์ ์ธ ์ฝ”๋“œ ๋ฆฌ๋ทฐ์™€ ํ˜‘์—…์„ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.github: ๐Ÿ”— 2๏ธโƒฃ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ๊ณผ์ •์ผ์ •๊ฐœ๋ฐœ ๊ณผ์ •๋‹ด๋‹น ํ˜น์€ ๊ธฐ์—ฌํ•œ ๋ถ€๋ถ„1์ผ์ฐจ(4/22)๐Ÿ”น S.A์ž‘์„ฑใ€€ใ€€- ๊ธฐ๋Šฅ ์ •์˜ใ€€ใ€€ - ์™€์ด์–ด ํ”„๋ ˆ์ž„ใ€€ใ€€ - ERD ์„ค๊ณ„ใ€€ใ€€ - API ๋ช…์„ธ์„œ ์ž‘์„ฑใ€€ใ€€ - ์—ญํ•  ๋ถ„๋ฐฐ๐Ÿ”น ํŠœํ„ฐ๋‹˜ ํ”ผ๋“œ๋ฐฑใ€€ ๊ธฐ๋Šฅ ์ •์˜ใ€€ ERD..