Django API TDD 삽질 여행기
API TDD 이 요망한놈
API를 만들면서 많은 삽질이 있었지만 그중에서 가장 삽질을 많이했던 부분이 있다.
API로 image upload 테스트를 해볼라면 어떻게?
이 포스트는 이걸 나중에 까먹더라도 쉽게 찾아보기 위해 작성한다.
시나리오
일단, 클라이언트랑 JWT
를 사용해서 통신을 한다는 가정하에 시나리오를 짜보자.
setUp
에서signup
,login
을 해서assertEqual
,aseertTrue
로 token값을 얻어낸다.- test method를 만들고
test_data
를 만들어준다. 이때 image는media
저장 경로에 있는걸 가지고 온다. HTTP_AUTHORIZATION
에JWT
값을 넣고 API 테스트assertEqual
로 status_code랑 값 비교
대략 적인 시나리오를 이렇게 진행했다.
Demo Code
Demo Code를 보기전에 API로 Image를 테스트 할려고 하면 SimpleUploadedFile
를 이용한다.
실제로 HTML Form에서 파일을 보낼때 request.FILES
를 찍어보면 InMemoryUploadedFile
로 넘어온다. 이렇게 HTML Form에서 보내는거 처럼 하기 위해서 SimpleUploadedFile
를 사용하면 된다.
'Programming > Django' 카테고리의 다른 글
Django ImageField Upload를 AWS S3해보자 (0) | 2016.07.15 |
---|---|
honcho start using port (0) | 2016.07.07 |
JWT 설명 및 djangorestframework-jwt 사용법 (0) | 2016.07.07 |
Django Study Summary (0) | 2016.07.02 |
Django development Setting (0) | 2016.05.24 |