1 minute read

공부에 임하는 자세

  • 어떤 것을 공부하면서 마주치는 문제(개념, 상황)에 있어서 그것이 어디에 속하는지, 어디에서 쓰이는지, 그것들이 어떻게 서로 연결되어 있는지 전체적으로 크게 볼 수 있어야 하는것이 굉장히 중요하다.

테스트 코드란?

소프트웨어의 기능과 동작, 데이터 등이 의도한대로 처리되는지 확인하는 과정을 수행하는 코드. 결함을 찾아내고 수정하는 과정에서 사용한다.

테스트 코드 작성 패턴 : Given - When - Then 패

단위테스트 설계 구조 어떤 데이터가 들어왔을 때 이 동작을 하면 내가 원하는 이 데이터가 나온다.

  1. Given: 시나리오 테스트를 준비하는 과정, 테스트에 필요한 변수, 입력값을 준비하는 단계이다.
  2. When: 실행 실제로 테스트를 실행해보는 단계이다.
  3. Then: 검증 마지막으로 테스트를 검증하는 단계 예상값과 테스트 결과값을 비교하여 검증한다.

Test Code는 이렇게 활용방법.

  1. 명세 정리가 잘 되어야한다
    • 무엇을 만들어야하는지가 명확하지 않으면 테스트 변경 등 짐이 되기 쉽다
    • 자주 바뀌면 테스트 코드의 장점보다 단점이 더 커진다
  2. 실행이 빨라야한다 (사이클)
    • 테스트 실행이 너무 느리면 개발과정에 부담이 된다
    • 테스트가 빨리 끝나야 빠르게 피드백을 받는다
  3. 만들기 쉬워야한다
    • 소프트웨어 설계(의존성)가 안 좋으면 테스트하기 어려워진다 → 나중엔 아무도 건들지 못하는 코드가 된다
  4. 팀 문화가 바탕이 되어야한다
    • 테스트 코드 작성을 지키는 팀 문화, PR 과정과 코드 작성 규칙 가이드, 코드리뷰 등
    • 테스트코드는 습관이고 문화다

테스트 코드를 만드는 이유

  1. 의도된 대로 작동하는지 검증을 하고 테스트 통과시 확신을 얻을 수 있다.
  2. 내가 원하는 방향대로 수정이 됐는지 빌드 단계에서 확인을 함으로서 배포 전에 실수를 확인할 수 있다.
  3. 테스트 코드를 통해서 프로그램이 의도하는 방향을 알 수있기 때문에 인수인계 할때 좋은 길라잡이가 될 수 있다.(+문서로서의 역할)

Updated: