test파일의 application.yml 내용 없는경우
1158
작성한 질문수 3
test디렉토리의 resouces패키지를 만들고, 그 안에 application.yml 을 생성해서 인메모리모드를 보여주셨습니다.
아무 코드가 없는 백지상태여도 인메모리모드로 돌아간다고 하셨는데요,
그래도 내용만 빌 뿐이지, 인메모리 환경을 위해서는 꼭 application.yml파일이 test디렉토리의 해당경로에 존재해야하는게 맞나요?
답변 1
1
안녕하세요, gdf4013 님. 공식 서포터즈 y2gcoder 입니다.
src/test/resources 아래에 application.yml에 내용을 넣어주지 않고 application.yml을 넣어준 이유는 쉽게 말씀드리면 test 패키지 밑의 테스트 클래스들을 실행할 때 test/resources/application.yml을 사용하기 위해서입니다. 설정 파일 우선순위와 관련이 있는데, 테스트할 때 src/test/resources/application.yml이 없으면 src/main/resources/application.yml 의 설정 정보로 테스트하기 때문에 실제 애플리케이션 실행시 사용되는 DB를 이용하게 되기 때문입니다.
src/test/resources/application.yml을 빈 값으로 넣어둔 이유는 스프링 부트에 h2 database 라이브러리를 추가했을 때는 기본값이 인메모리 모드로 실행하는 것이기 때문입니다. 그렇기 때문에 만약 실제 애플리케이션을 실행할 때도 인메모리 DB를 사용하고 싶다고 하시면 application.yml에서 db 설정하는 url, username, password 같은 부분을 적지 않으시면 마찬가지로 인메모리 모드로 H2 DB를 이용하실 수 있습니다 :)
감사합니다.
OrderServiceTest 상문주문 테스트 시 update 쿼리 문의
0
18
1
sdk 설정 오류
0
59
2
오탈자 - @Transactional
0
58
1
src/test/resources 테스트 경로 문제
0
52
1
상품 등록후 H2 db 출력 순서 바꿀 수 있나요?
0
67
1
MemberRepositoryTest 실행오류
0
83
1
boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)
1
186
2
강의 마지막 QueryDSL 사용 부분 질문있습니다
1
146
2
클라이언트에서 isbn과 author 수정 요청을 한 경우에 대해 질문드립니다.
0
53
1
도메인 모델 패턴 vs 트랜잭션 스크립트 패턴
0
76
1
기본 생성자
0
62
1
h2 DB 연결시 jdbc url 변경 이유가 궁금합니다.
0
103
1
멤버서비스테스트 부분에서 막힙니다.
0
168
4
실무에서도 EntityManager를 이용해서 많이 작업하는 편일까요?
0
118
1
초반에 h2 다운로드 과정 꼭 필요한가요?
0
122
2
자신 필드에도 get으로 접근하는 이유가 있을까요?
0
115
1
24분 27초 연관관계 편의 메서드 위치
0
114
1
단건 주문만 가능하게 한건 의도한 부분이신가요?
0
112
2
빌드 툴, Gradle
0
61
1
h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다
0
78
2
Repository에서 EntityManager 주입 방식 차이
0
91
1
롬복과 사용자 정의 setter 메서드
0
74
1
주문 목록 조회 fetch join 질문드립니다
0
85
1
dirty checking 질문드립니다.
0
84
1





