210708-TIL

Jane·2021년 7월 8일
1

TIL

목록 보기
74/103
post-thumbnail

오늘 한 일

✔️ 이슈트레커 프로젝트

✔️ 알고리즘

✔️ 그림으로 공부하는 IT 인프라 구조

  • 8장 성능 향상을 위한 인프라 구조

✔️ 더 자바, 애플리케이션을 테스트하는 다양한 방법

  • 1부 JUnit 5 1~4강
    • ctrl + shift + t : 테스트 생성 단축키
    • ctrl + shift + r : 테스트 실행
      (메서드가 없는 빈 줄에 놓고 단축키를 실행하면 해당 클래스의 모든 테스트를 실행)
    • @BeforeAll, @AfterAll: static void만 허용
    • 테스트 메서드 이름은 가독성이 좋은 snake case로 많이 작성한다고 하셔서 찾아봤더니 camel case로 작성하는게 맞는 것 같다.
    • 테스트가 실패하는 이유도 적어주면 좋다.
      • assertEquals를 사용하면 세 번째 파라미터에 메시지를 적어주면 되는데, 문자열 연산에 비용이 클 것 같으면 람다식을 사용해주는 것이 좋다.
      • AssertJ의 assertThat에서는 as나 withFailMessage 사용를 사용하면 된다.
    • assertTimeoutPreemptively : 설정한 시간이 경과하자마자 테스트를 종료
      • 단 ThreadLocal을 사용하는 코드가 있다면 side effect가 발생할 수 있다.
        → 스프링 Transaction 설정이 제대로 안되어 롤백이 안되고 db에 테스트 시 실행한 결과가 반영될 수 있다.

느낀 점

  • 게더에서도 유지되는 거리두기😂
  • 이슈트레커 프로젝트 테스트 코드를 작성하는 중이다. Mockmvc를 이용한 테스트를 처음해봐서 응답 결과를 gson으로 파싱해서 assertThat으로 테스트하려고 했는데 보통 이렇게 안하고 JsonPath를 이용한다고 한다.
  • 알고리즘 2일차 문제 풀이를 했다. 프로그래머스 level1, 2 정도는 금방 풀 줄 알았는데 생각보다 잘 못해서 6문제밖에 못 풀었다. 그래도 파이썬의 Counter나 reduce, lambda에 좀 더 익숙해질 수 있어 좋았다.
  • 드디어 그림으로 공부하는 IT 인프라 구조를 다 읽었다. 그런데 정리를 안하고 이동 시간에 읽거나 쇼파에 누워서 읽었더니 벌써부터 기억이 잘 나지 않는다. 다음주에 하루에 한 챕터씩 다시 읽어보며 정리해볼까 생각중이다.
  • 백기선 님 더 자바 강의 수강을 시작했다. 일단 가볍게 앞에 강의 4개 정도만 자기 전에 들어보았다. Junit 5가 처음이 아니다보니 다 아는 내용일 줄 알았는데 assertTimeoutPreemptively 등 모르는 내용도 좀 있었다.

0개의 댓글