본문 바로가기
Dev/Spring

[SpringBoot] 테스트 케이스를 위한 설정파일 만들기

by ssyoni 2022. 2. 10.
반응형


테스트 케이스를 위한 스프링 환경과, 일반적으로 애플리케이션을 실행하는 환경은 다르기 때문에 설정 파일을 다르게 사용하는 것이 바람직하다.

실습을 위해 간단하게 테스트환경을 위한 인메모리 디비 접속 정보를 담은 설정 파일을 생성해보자.
(사실 스프링부트에서는 설정 파일이 없으면 기본적으로 DB를 메모리 모드로 돌려버리기 때문에 별도의 설정이 필요 없다.)

먼저 java 디렉터리에 있는 설정 파일이다.

spring:
  datasource:
    url: jdbc:h2:tcp://localhost/~/jpashop
    username: sa
    password:
    driver-class-name: org.h2.Driver


  jpa:
    hibernate:
      ddl-auto: create
    properties:
      hibernate:
#        show_sql: true
        format_sql: true

logging:
  level:
    org.hibernate.SQL: debug
    org.hibernate.type: trace

dataSource url을 보면 로컬에서 실행되는 h2 db 접속 정보가 입력되어있다.

테스트 환경을 위한 설정 파일을 생성하고 인메모리 DB 접속 정보를 입력해보자

먼저 java 디렉터리와 똑같이 test 디렉토리 하위에 resources 폴더를 생성한다.


그다음 java에 있는 application.yml 파일을 똑같이 만들어주자. 테스트 케이스 실행 시 테스트 코드가 관리되는 디렉터리에 있는 설정 파일을 우선으로 읽는다.


그럼 이제 datasource url 부분만 인메모리 디비 접속 url로 변경해주면 된다.
h2 인메모리 접속 url은 h2 database 사이트 내의 cheet sheet 카테고리로 들어가면 조회가 가능하다.


인 메모리 항목 첫 번째의 url을 복사해서 application.yml에 입력한다.

spring:
  datasource:
    url: jdbc:h2:mem:test
    username: sa
    password:
    driver-class-name: org.h2.Driver


저장하고 테스트 케이스 실행 시 콘솔을 확인해보면 인메모리에 커넥션 된 것을 확인할 수 있다.


반응형

댓글