트랜잭션 예외별 롤백,커밋
·
인프런 강의
스프링은 체크예외(Exception) 발생 시 커밋하고, 언체크(RuntimeException) 예외는 롤백하게 된다.   스프링 기본적으로 체크 예외는 비즈니스 의미가 있을 때 사용하고, 런타임(언체크) 예외는 복구 불가능한 예외로 가정 한다.Exception : 비즈니스 의미가 있을 때 사용RuntimeException :  복구 불가능한 예외   비즈니스예외란 무엇일까?예시로 주문로직에서 주문은 잔고부족으로 주문이 실패했다면? 주문상태를 대기로 처리하고 주문정보를 저장해야한다.어떠한 심각한 복구불가한 문제가 아닌 비즈니스 상황에서 충분히 일어날 수 있는 예외라고 이해하면 좋을거 같다.1. **정상**: 주문시 결제를 성공하면 주문 데이터를 저장하고 결제 상태를 `완료` 로 처리한다.    2. **..
박우빈 - Practical Testing: 실용적인 테스트 가이드 리뷰
·
인프런 강의/Practical Testing: 실용적인 테스트 가이드
강의리뷰 박우빈 - Practical Testing: 실용적인 테스트 가이드 기존에 작성해오던 테스트 코드를 한 번 더 정리하는 시간이었다. 테스트 코드를 작성하는 방법의 큰 틀은 비슷하지만 개발자마다 조금씩은 다른 거 같다. 좋았던 점 기억에 남는 점들을 짧게 정리해 보았습니다. 테스트는 왜 작성해야 하는가? 문서화 빠른 피드백 자동화, CI에서 우리가 작성한 테스트 코드로 버그가 배포되는 것을 방지 리팩토링 시 신뢰도 일반적으로 Given-When-Then 패턴을 중심으로 작성한다. 기대 결과를 검증(Then) 부분에서 사용하는 메서드의 차이가 보였다. 기존에 사용하던 방법 기존에 사용하던 assertThat 을 사용해 검증할 경우에는 한줄에 하나값만 테스트 할수있다. 강의에서나온 방법 extract..