Unit Text, 유닛 테스트

Daye Kang·2020년 1월 11일
1

Unit Test?

: 테스트할 수 있는 가장 작은 단위를 테스트하는 코드를 작성해서 'test'하는 것

  • 함수
  • 메소드

테스트 유형

  1. End-to-End & UI testing:
    : 브라우저가 제대로 렌더링 되는지 확인하는 것. 모든 시스템을 다 갖추고 사람이 직접 실행하는 것이기 때문에 비용이 많이 들어감. 시간도 제일 많이 들어가고 실수도 많을 수 밖에 없음.
    그럼에도 제일 직관적이라 하기가 쉽다는 장점이 있음.

  2. Integration testing
    : mockdata를 넣어서 제대로 되는지 확인해 보는 것. 프론트와 백에서 따로 해당 서버만 테스트 해보는 것. UI testting 만큼은 아니지만 비용과 시간이 들어감.

  3. Unit testing
    : 테스트할 수 있는 가장 작은 단위로 코드를 테스팅 해보는 것. '함수'를 테스팅하는 것으로 직접 짠 코드를 테스트 하는 코드를 짜야 한다. 빠르게 테스팅할 수 있다는 장점이 있으며 반복적으로 계속 돌려볼 수 있다. 그래서 버전이 업데이트 될 때마다 시행되어야 하는 테스팅을 자동화할 수 있어 길게 보면 매우 효율적이다. 테스팅을 하지 않아 생기는 보수 유지비가 나중에는 더 커질 수 있으므로 'unit test'는 매우 중요함.

Test의 일반 원칙

  • 테스트 유닛은 각 기능의 가장 작은 단위에 집중하여 해당 기능이 정확히 동작하는지를 증명해야 함.

  • 각 테스트 유닛은 독립적이어야 함. 각 테스트는 혼자서도 실행 가능해야하고, 테스트 슈트로도 실행 가능해야 함.

  • 테스트가 빠르게 실행되게 만들기 위해 노력해야 함.

  • 그날의 코딩을 시작하기 전에 항상 풀 테스트 슈트를 돌려야 함.

====================================================================================

reference: https://stackoverflow.com/c/wecode/questions/157

profile
뭐든 하자

0개의 댓글