2020-05-16 TIL Unit Test

seo_kk·2020년 5월 16일
1

Intro to Unit Test

  • 시스템을 테스트 할 때 크게 3가지 방법으로 나눌 수 있다.
  1. UI Testing / End-To-End Testing
  2. Integration Testing
  3. Unit Testing

이중 UI Testing이 가장 까다롭다. 또한 Manual Testing은 실행하기 쉽다는 장점이 있지만 비용이 많이 들고 부정확하며 실행 시간이 오래 걸린다. 자동화 할 수 있지만 UI Testing은 자동화 하기가 가장 까다롭고 또 실행하기도 까다롭다. Intergration Testing이 그 다음으로 공수가 많이든다.

Unit Testing이 가장 쉬우면서도 효과가 가장 좋다.
그러므로 UI Testing은 10%, Integrating Testing은 20%, 그리고 Unit Testing을 70% 전체 테스트 coverage를 구현 하는 것이 권장된다.

What is Unit Test?

  • 테스트 할 수 있는 가장 작은 단위를 테스트 하는 코드를 작성해서 테스트 하는 것을 말한다.
  • 함수
  • 메소드

파이썬에는 unittest라는 유닛테스트를 가능케 해주는 모듈이 이미 포함 되어 있다.
unittest 외에도 pytest라는 패키지도 있다.
하지만 장고에서 기본적으로 unittest 가 사용됨으로 unittest를 사용해서 unit test를 구현하도록 하겠다.

Python Unit Test 개념 및 용어

  • TestCase : unittest 프레임 워크의 테스트 조직의 기본 단위
  • Fixture : 테스트를 진행할때 필요한 테스트용 데이터 혹은 설정 등을 이야기 한다. 주로 테스트 가 실행되기 전이나 후에 생긴다.
  • assertion : unittest에서 테스트 하는 부분이 제대로 됬는지를 확인하는 부분. Assertion이 실패하면 테스트도 실패한다.
profile
BackEnd-Developer

0개의 댓글