[TIL] 23.06.22

2023. 6. 22. 20:30· TIL/2023
목차
  1. 💋 오늘 공부한 내용
  2. 💋 감정 회고
  3. 💋 오늘의 포스팅
반응형

 

💋 오늘 공부한 내용

 

  • 오늘도 역시 이리내랑 만나서 카공을 했다. 
  • 테스트 데이터 격리에 대해서 고민을 좀 해봤다.
    • 프로덕션 데이터 vs 테스트 데이터
      • 아예 다른 데이터베이스를 사용하도록 test/src application.properties를 별도로 설정해서 분리할 수 있음
    • 테스트 코드 간 데이터 격리
      • 각 테스트 실행 후 매번 delete함 => 테스트가 중간에 실패하는 경우 다른 데이터가 들어갈 수 있음
        • 초기화하는 sql 파일을 별도로 작성해두고 어노테이션으로 설정해 두는 방법
          • @Sql(scripts = {"/truncate.sql"}, executionPhase = BEFORE_TEST_METHOD)
        • @AfterEach같은 메서드 내에서 직접 설정하는 방법 
      • 트랜잭션 사용해서 매 테스트 메서드 후 데이터 롤백 
        • 도중에 테스트가 실패하더라도, 데이터가 저장되지 않기 때문에 안전함
  • 서비스 코드까지는 @Transactional 어노테이션으로 해결할 수 있지만, RestAssured 라이브러리를 사용하는 경우에는 어노테이션을 적용할 수가 없다...! 
  • 왜일까..? 일단 모르겠어서 지피티에게 물어봤는데 현재까지 답변은 아래와 같다. 먼말인지는 알겠는데 와닿지는 않는

 

  • 레벨3에서 인수테스트를 좀 더 체계적으로 잘 작성해보고 싶은데, 이렇게 되면 어떻게 해야하지.....
  • 테스트 격리 라이브러리까지 만든 우테코 크루의 글을 읽어보았다. 
    • 진짜로 매번 데이터를 직접 지우는 방법(sql 실행이 되었든, 메서드 호출이 되었든, 암튼)밖에 없을까..?
    • 테스트코드 실행 전마다 Truncate하는 sql을 실행하면, 과연 정말로 안전할까?
    • 진짜 저방법밖에 없을까...???!?!?!?!
  • 오늘 들으면서 실습한 강의 간단히 정리

 

 

💋 감정 회고

 

  • 갑자기 박스터랑 여우한테 공부를 열심히 한다는 말을 들었다. 
  • 레벨2 동안 먼가 뒤로갈수록ㅋㅋㅌㅋㅌ 펑펑 놀았는데, 방학하고 놀러갔다온 뒤로 정신차린듯 역시 사람은 놀아야해..

 

💋 오늘의 포스팅

 

https://engineerinsight.tistory.com/121

 

[TEST] 테스트 데이터 격리: 테스트용 데이터베이스 분리, 트랜잭션 강제 롤백, @Transactional 어노테

💋 테스트 데이터 격리의 필요성 테스트 코드를 통해 아래 코드를 실행했다. @Test void findItems() { Item item1 = new Item("gitchan", 1000, 10); Item item2 = new Item("irene", 1000, 20); Item item3 = new Item("oing", 1000, 30); i

engineerinsight.tistory.com

반응형

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'TIL > 2023' 카테고리의 다른 글

[TIL] 23.07.03  (0) 2023.07.04
[TIL] 23.06.28  (0) 2023.06.28
[TIL] 23.06.21  (2) 2023.06.21
[TIL] 23.06.20  (0) 2023.06.20
[TIL] 23.06.16  (0) 2023.06.17
  1. 💋 오늘 공부한 내용
  2. 💋 감정 회고
  3. 💋 오늘의 포스팅
'TIL/2023' 카테고리의 다른 글
  • [TIL] 23.07.03
  • [TIL] 23.06.28
  • [TIL] 23.06.21
  • [TIL] 23.06.20
깃짱
깃짱
연새데학교 컴퓨터과학과 & 우아한테크코스 5기 백엔드 스타라이토 깃짱
깃짱코딩연새데학교 컴퓨터과학과 & 우아한테크코스 5기 백엔드 스타라이토 깃짱
반응형
깃짱
깃짱코딩
깃짱
전체
오늘
어제
  • 분류 전체보기
    • About. 깃짱
    • Weekly Momentum
      • 2024
    • PROJECT
      • AIGOYA LABS
      • Stamp Crush
      • Sunny Braille
    • 우아한테크코스5기
    • 회고+후기
    • Computer Science
      • Operating System
      • Computer Architecture
      • Network
      • Data Structure
      • Database
      • Algorithm
      • Automata
      • Data Privacy
      • Graphics
      • ETC
    • WEB
      • HTTP
      • Application
    • C, C++
    • JAVA
    • Spring
      • JPA
      • MVC
    • AI
    • MySQL
    • PostgreSQL
    • DevOps
      • AWS
      • 대규모 시스템 설계
    • frontend
      • HTML+CSS
    • NextJS
    • TEST
    • Industrial Engineering
    • Soft Skill
    • TIL
      • 2023
      • 2024
    • Linux
    • Git
    • IntelliJ
    • ETC
      • 日本語

블로그 메뉴

  • 홈
  • 깃허브

인기 글

최근 글

태그

  • 상속
  • Java
  • 예외
  • TDD
  • 조합
  • 상속과조합
  • 람다
  • Stream
  • Composition
  • 레벨로그
  • 컴포지션
  • lamda
  • 우테코5기
  • 함수형프로그래밍
  • 스트림
  • 우아한테크코스5기
  • 람다와스트림
  • OOP
  • 우아한테크코스
  • 우테코
hELLO · Designed By 정상우.v4.2.0
깃짱
[TIL] 23.06.22
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.