반응형
아직 공부 중인 학생이라 부족한 부분이 있을 수 있습니다.
혹시라도 틀린 부분이 있다면 언제든지 댓글로 남겨주세요. 감사합니다 🙇♂️
스프링 MVC2편 섹션4 메시지, 국제화 강의 따라 실습 중 아래 테스트 코드에서 계속 오류가 발생했다.
package hello.itemservice.message;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.MessageSource;
import java.util.Locale;
import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest
public class MessageSourceTest {
@Autowired
MessageSource ms;
@Test
void helloMessage() {
String result = ms.getMessage("hello", null, Locale.KOREA);
assertThat(result).isEqualTo("안녕");
}
}
강의와 완전히 동일하게 코드를 작성했음에도 테스트가 계속 실패했다.
예상값 "안녕"과 실제값이 일치하지 않는 에러가 계속 발생했다.
강의 pdf 파일에 한글 깨짐이 발생하는 경우라는 부분을 발견했고,
Setting -> Editor -> File Encodings에서 설정을 변경했는데도 테스트에 실패했고, 한참을 삽질한 끝에 properties 파일 자체에 저장된 한글이 깨져있던 것이 원인임을 알게 되었다.
messages.properties 파일을 열어보니 위의 사진처럼 ??으로 변해있었다.
hello=안녕
hello.name=안녕 {0}
다시 기존코드로 수정했다.
바꾸고 나니 테스트에 성공하였다.
휴 ~ 얼마만에 보는 초록불인지 ..
처음에는 단순한 코드 문제인 줄 알았는데, 결국 원인은 인코딩 설정 + 한글 깨짐 이었다 ..
반응형
'Spring Study' 카테고리의 다른 글
[스프링 MVC] #11 (0) | 2025.05.25 |
---|---|
[스프링 MVC] #10 (0) | 2025.05.17 |
[스프링 MVC] #9 (0) | 2025.05.14 |
[스프링 MVC] #8 (0) | 2025.05.10 |
[스프링 MVC] #7 (0) | 2025.05.04 |