테스트 코드를 작성함으로써 내가 만든 api의 첫번째 사용자가 되어보자
테스트에는 대표적으로 아래와 같은 테스트가 있다.
유닛 테스트가 작성하기 쉽다. 함수 단위에서 테스트하기 때문이다.유닛테스트를 많이 작성 할수록 필요한 통합테스트 개체수가 줄어든다. 유닛 테스트를 다 작성했다고 하더라도 통합테스트가 필요한데 그 이유는 예전에 작동했던 코드가 동작하지 않는 오류를 잡을 수 있기 때문이다.
테스트 코드는 성공, 실패, 에러는 내뱉을 수 있고 예측된 결과 뿐만 아니라 예기치 못한 상황에 대해서도 테스트 해야한다.
장고의 모듈, 내장 python의 기능들은 제공되는 기능이기 때문에 테스트 대상으로 볼 순 없다. 개발 과정에서 잘 작동하는지는 확인하는 작업은 필요하지만 테스트 코드의 대상은 아니다. 그 외 개발자가 작성한 코드들이 테스트코드의 대상이다.
앱 내부에 테스트 폴더를 만든 뒤 __init__.py
파일을 만들어 해당 폴더가 패키지임을 알려준다. 장고에서 앱을 만들면 앱 안에 앱이름.tests.py
파일이 자동 생성 되는데 폴더 안에서 테스트 파일을 종류별로 관리 할 것이기 때문에 해당 파일은 지워주도록 하자.
하나의 테스트에 대해서 하나의 클래스를 통해 관리하도록 한다.
setUpTestData
classmethod
로 선언하여 사용한다.setUp
def
로 선언해서 사용한다.추천하는 테스트의 경우 모델 테스트이다. 모델 테스트라 함은 모델에 정의한 형태로 값이 들어오는지 확인하는 테스트이다.