테스트 환경 분리 - application.yml
테스트 환경 중에서도 DB를 분리해서 사용하였다.
그러다보니 application.yml 파일을 test용으로 분리해야 했다.
분리하는 방법
기존 파일을 복사해 테스트 용으로 설정을 바꿨다.
test 폴더 아래에 resources 폴더를 만든다.
그 아래에 application.yml 파일을 옮기면 test 클래스는 이 파일로 인식하게 된다.
변경할 것
spring:
config.activate.on-profile: default
application:
name: GameBlog
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
password: ${MYSQL_PASSWORD}
url: jdbc:mysql://127.0.0.1:3307/blog_test
username: ${MYSQL_USER}
test용 DB를 사용할 것이기 때문에 url을 변경하였다.
우선 DB 이름을 바꿨고, 원래 사용하던 3306 포트 대신 3307 포트를 사용하였다.
properties 파일을 쓰더라도 똑같이 수정해주면 된다.
테스트 환경 분리 - docker
version: "3.8"
services:
db:
image: mysql:8.0.28
platform: linux/x86_64
restart: always
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: 루트 패스워드
MYSQL_DATABASE: blog
MYSQL_USER: user
MYSQL_PASSWORD: 패스워드
TZ: Asia/Seoul
db-test:
image: mysql:8.0.28
platform: linux/x86_64
restart: always
ports:
- "3307:3306"
environment:
MYSQL_ROOT_PASSWORD: 루트 패스워드
MYSQL_DATABASE: blog_test
MYSQL_USER: user
MYSQL_PASSWORD: 패스워드
TZ: Asia/Seoul
docker-compose.yml 파일도 수정했다.
여기서도 test DB의 포트 번호를 바꾸고 DB명도 바꿨다.
docker-compose up -d
그리고 다시 위 명령어로 컨테이너를 올린다.
그러면 이렇게 두 개의 db가 올라가게 된다.
'Spring' 카테고리의 다른 글
[Spring] JPA 심화 강의 정리 (3) | 2024.06.26 |
---|---|
[Spring] 🙉Fixture Monkey🙉 (1) | 2024.06.15 |
[Spring] AOP란 무엇일까? (+Spring AOP) (0) | 2024.06.12 |
[Spring] JUnit 5 단위 테스트 (0) | 2024.06.11 |
[Spring] Naver, Google 로그인 (OAuth2) (0) | 2024.06.10 |