Comments (2)
좋은 포스팅을 올려주셔서 감사합니다. 항상 많은 도움이 되고 있습니다!
한 가지 궁금한점이 있는데요.
*.sql 파일로 테스트 데이터를 set up 하고, ddl-auto를 none으로 설정한 상태에서 엔티티 클래스에 변경이 있는 경우 (컬럼 명 변경, 컬럼 사이즈 변경 등등), *.sql 파일들을 모두 찾아서 수정을 해줘야 할 것 같은데 이러한 경우, 수기로 변경하는 것 이외에 좋은 방법이 있을까요?
엔티티 변경이 테스트 코드 상에는 반영되었지만 *.sql 파일에는 반영이 되지 않아 테스트가 몇 번 실패한 적이 있어서 현재는 Entity Manager를 통해 set up을 하고 있습니다..😂
사족으로는
데이터 Set Up은 Entity Manager를 이용해서 사용하는 것이 훨씬 효율 작이라고 생각이 드실 겁니다
이 부분에 오타가 있는 것 같습니다~!
from blog-comment.
결론 부터 말씀드리면 좋은 대안은 없습니다.
개인적으로는 테스트 코드에서는 ddl-auto를 none으로하지 않고 사용합니다. 대부분의 테스트 대역에서는 EntityManager 기반으로 given을 작성하는것을 권장합니다.
*.sql 기반으로 셋팅하는 경우는 다음과 같습니다.
- spring batch test
- 서비스의 디비가 아닌 경우 (어쩔수 없이 DataSource를 2개이상 무는 구조)
- Entity Manager를 생성 하지 않은 구조 (2번과 유사)
- 특정 시점의 데이터로 set up 필요한경우 (setter가 닫혀 있어 로직으로 구현이 불편한 경우)
1~4에 해당하지 않으면 EntityManager 기반으로 작성하는것이 좋을거 같습니다.
from blog-comment.
Related Issues (20)
- Exposed - Yun Blog | 기술 블로그 HOT 3
- Checked Exception을 대하는 자세 - Yun Blog | 기술 블로그 HOT 3
- Spring-Jpa Best Practices Step-06 - Setter 사용하지 않기 - Yun Blog | 기술 블로그 HOT 2
- Spring-Jpa Best Practices Step-08 - OneToOne 관계 설정 팁 - Yun Blog | 기술 블로그 HOT 2
- Github Action With Gradle - Yun Blog | 기술 블로그 HOT 1
- Spring Guide - Domain - Yun Blog | 기술 블로그 HOT 1
- Resilience4j를 이용한 서킷 브레이커 기초 - Yun Blog | 기술 블로그 HOT 1
- Spring Batch Test 작성 방법 및 고찰 - Yun Blog | 기술 블로그 HOT 1
- 테스트 대역폭 늘리기 - Yun Blog | 기술 블로그 HOT 4
- 코틀린 groupBy, groupingBy, chunked, flatMap, aggregate 정리 - Yun Blog | 기술 블로그 HOT 1
- Spring Batch 업데이트 성능 최적화 및 분석 - Yun Blog | 기술 블로그 HOT 1
- IntelliJ 자주 사용하는 기능 정리 - Yun Blog | 기술 블로그 HOT 2
- 좋은 코드 설계를 위한 답없는 고민들 - Yun Blog | 기술 블로그 HOT 2
- Kotlin 기반 경량 ORM Exposed - Yun Blog | 기술 블로그 HOT 2
- Mysql Explain - Yun Blog | 기술 블로그
- MongoDB Update 성능 측정 및 분석 - Yun Blog | 기술 블로그 HOT 2
- 외부 인프라스트럭처 테스트 - Yun Blog | 기술 블로그 HOT 2
- 테스트 코드 작성에 대한 나름의 고찰 - Yun Blog | 기술 블로그 HOT 1
- Batch Insert 성능 향상기 2편 - 성능 측정 - Yun Blog | 기술 블로그 HOT 2
- 코루틴을 이용한 성능 개선 - Flow를 활용한 다중 요청 처리 - Yun Blog | 기술 블로그 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from blog-comment.