| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- 단위테스트
- ArrayList
- js
- junit
- 자바
- Java
- 정규식
- Array
- 인텔리제이
- list
- HashMap
- 테스트자동화
- SpringBoot
- Eclipse
- 배열
- IntelliJ
- Visual Studio Code
- vscode
- CSS
- java테스트
- 자바스크립트
- 스프링부트
- javascript
- 자바문법
- string
- 문자열
- math
- html
- junit5
- input
- Today
- Total
목록2026/03/14 (2)
어제 오늘 내일
"바빠서 테스트 짤 시간이 없어요."라는 핑계, 많이 들어보셨죠? 하지만 테스트 코드가 없는 코드는 '레거시(Legacy)'일 뿐입니다. 테스트가 없으면 리팩토링도, 기능 추가도 무서워서 못 하게 되니까요.오늘은 스프링 부트 테스트의 양대 산맥, JUnit5(실행기)와 Mockito(가짜 객체)를 사용해 서비스 계층(Service Layer)을 테스트하는 방법을 알아보겠습니다. 1. 단위 테스트(Unit Test)란?"딱 하나(Unit)만 격리해서 테스트한다"는 뜻입니다.우리가 MemberService를 테스트하고 싶은데, 이 서비스가 MemberRepository를 통해 진짜 DB에 접근한다면?테스트가 느려집니다. (DB 통신)데이터가 꼬입니다. (테스트할 때마다 DB 초기화 필요)결론: 서비스 로직..
DB를 다루는 애플리케이션에서 가장 중요한 것은 속도가 아니라 신뢰성입니다.A가 B에게 100만 원을 송금하는 로직을 짰다고 가정해 봅시다.A의 계좌에서 100만 원 차감 (UPDATE)(여기서 서버 전원 꺼짐 💥)B의 계좌에 100만 원 입금 (UPDATE)트랜잭션이 없다면 100만 원은 공중분해 됩니다. 이런 일을 막기 위해 "모두 성공하거나, 아니면 아예 없던 일로 하거나(All or Nothing)"를 보장해 주는 것이 바로 트랜잭션입니다. 1. 스프링은 어떻게 트랜잭션을 거나요? (AOP와 프록시)스프링에서 트랜잭션을 적용하는 방법은 너무나 간단합니다. 메서드나 클래스 위에 @Transactional만 붙이면 끝이죠.@Servicepublic class TransferService { ..
