작성
·
467
0
지금 강의는 mem:test:db 이건 스프링부트가 만들어주는 스키마이고, (메모리로동작?)
이전 강의는 testcase 라는 스키마를 저희가 직접만들었고
이 차이 인건가요 ?!?
===========================
둘중 어느방식으로 테스트코드를 더 많이 사용하나요 ?
눈으로 직접 테이블을 보고싶다면 저희가 먼저 이용한 testcase 방식을 사용하면 되는건가요 ?
답변 1
1
안녕하세요. H K님, 공식 서포터즈 OMG입니다.
.
지금 강의는 mem:test:db 이건 스프링부트가 만들어주는 스키마이고, (메모리로동작?)
이전 강의는 testcase 라는 스키마를 저희가 직접만들었고
이 차이 인건가요 ?!?
=>
전자는 스프링의 실행주기와 동일하게 메모리에서 동작하고,
후자는 스키마를 직접 생성한다는 차이가 맞습니다.
.
둘중 어느방식으로 테스트코드를 더 많이 사용하나요 ?
눈으로 직접 테이블을 보고싶다면 저희가 먼저 이용한 testcase 방식을 사용하면 되는건가요 ?
테스트 방식이 아닌, 실제 웹 애플리케이션을 개발한다고 했을 때 메모리 방식에서도 웹 콘솔 접근이 가능합니다.
가령 localhost:8080/h2-console 로 접속이 가능한데요. 아래 설정을 해주면 됩니다.
spring.h2.console.path=/h2-console
spring.h2.console.enabled=true
spring.datasource.url=jdbc:h2:mem:testdb
그리고, 아래의 테스트 피라미드를 한번 쯤 보셨을 것 같은데요,
테스트에서 단위 테스트 작성 비중이 상당히 높습니다.
실제 DB와 연결하여 실행하지 않고 빠르게 확인 가능하며 많이 작성해야 하고 실행해야하는 단위테스트 특성상
테스트의 경우 메모리에서 실행하는 빈도가 높을 것 같네요 ^^
.
감사합니다.
친절한 답변 감사합니다