ioh's Development

  • 홈
  • 태그
  • 방명록

Kent Beck 1

단위 테스트를 넘어서 - 통합 테스트가 잡아준 JPA 버그 이야기

테스트는 통과했는데 버그였다 - 트랜잭션 경계에서 배운 것 TL;DRMock 테스트의 한계를 마주한 순간 - JPA Detached Entity 디버깅 경험단위 테스트(Mock)에서는 절대 발견할 수 없는 버그가 있다. 비밀번호 변경 기능이 "성공"했는데 DB에 반영되지 않는 버그를 통합 테스트를 작성하면서 발견했고, 원인은 JPA의 Detached Entity 상태였다.왜 이 글을 쓰게 되었는가?1주차 과제로 회원가입, 내 정보 조회, 비밀번호 변경 API를 TDD로 구현하고 있었다.단위 테스트는 모두 통과했다. E2E 테스트도 작성해뒀다. 그런데 Facade 통합 테스트를 작성하는 과정에서 이상한 현상을 발견했다.비밀번호 변경 API 호출 → 성공 응답새 비밀번호로 로그인 → 실패이전 비밀번호로 로그..

백엔드 프레임워크/JPA & Mybatis 2026.02.06
이전
1
다음
더보기
프로필사진

ioh's Development

"코드는 나의 언어, 디버깅은 나의 모험!" 배움은 기록에서, 성장은 도전에서 시작됩니다. 이 블로그는 개발 여정을 기록하고, 성장의 발자취를 남기는 공간입니다. 삽질도 성공도 모두 소중한 경험으로, 개발의 미로를 탐험하며 얻은 보물들을 공유합니다. 다양한 관심사와 배운 것들, 그리고 주니어 개발자로서의 고민과 성장을 담아내는 블로그입니다.

  • 분류 전체보기 (253)
    • AX (5)
    • 아키텍처 (7)
    • AWS 및 클라우드 인프라 (0)
    • 운영 (38)
      • 웹 애플리케이션 서버 (Web Applicatio.. (1)
      • Kafka & MQ (19)
      • 로깅 및 모니터링 (0)
    • 프로그래밍 언어 (19)
      • Java (16)
      • Kotlin (3)
    • 알고리즘 & 자료구조 (86)
      • 자료구조 (Data Structures) (1)
      • 코딩테스트 준비 (40)
      • 스터디 (Algorithm Study) (36)
    • 백엔드 프레임워크 (19)
      • SpringBoot (3)
      • Spring Framework (2)
      • JPA & Mybatis (9)
    • 데이터베이스 (18)
      • RDBMS (관계형 데이터베이스) (1)
      • NoSQL (3)
      • Elasticsearch (3)
    • Network (10)
    • CICD 및 버전 관리 (2)
      • CICD (2)
      • 버전 관리 (0)
    • React (3)
    • 도서 (12)
      • 수학리부트 (2)
      • 알고리즘 (1)
      • 리액트 교과서 (5)
      • 디자인 패턴의 아름다움 (0)
    • 개발환경 (1)
      • Dev Setup (1)
      • IDE 및 개발 도구 (0)
      • 프로젝트 관리 도구 (0)
    • 오픈소스 기여 (1)
    • 자격증 (2)
      • 정보처리기사 (1)
    • 스터디 (9)
      • 루퍼스 (12)

Tag

루프팩 3기, 루퍼스 루프팩, 코딩테스트, java, 99클럽, Kafka, 가상 면접 사례로 배우는 대규모 시스템 설계 기초, 리눅스마스터자격증, 루퍼스, 프로그래머스, 항해, 99일지, Redis, 소프트웨어 아키텍처, 루프팩, 대기열, Loopers, 개발자스터디, 자료구조, til,

최근글과 인기글

  • 최근글
  • 인기글

공지사항

Calendar

«   2026/08   »
일 월 화 수 목 금 토
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

Copyright © Daum Corp. All rights reserved.

  • My Github

티스토리툴바