wafflestudio/seminar-2020

TestCase의 setUp에서 다른 API를 이용하는 방법에 대해

Offen

#232 geöffnet am 08.10.2020

 (3 Kommentare) (7 Reaktionen) (0 zugewiesene Personen)Python (49 Forks)auto 404
HW3backendgood first issuequestion

Repository-Metriken

Stars
 (27 Sterne)
PR-Merge-Metriken
 (Keine gemergten PRs in 30 T)

Beschreibung

TestCase class의 setUp 메소드는 각 API를 테스트 하기 위한 세팅을 하고, 이 과정에서 DB에 특정 row를 insert 합니다.
DB에 row를 insert 하기 위해서는 아래의 2가지 방법을 이용할 수 있다고 생각했습니다.

  1. client.post() 등을 이용해서, 구현해놓은 API를 사용
  2. Seminar.objects.create() 등을 이용해서, object를 직접 생성

제공받은 tests_user.py를 살펴보면 1번 방법을 이용하고 있음을 알 수 있습니다.
질문 : 두 방법 중 무엇을 사용하는 것이 더 좋을까요? 어떤 방법을 사용하는지는 개인 취향일 뿐인가요?

개인적으로는, 1번 방법에서 다른 API를 이용하는 점이 좋지 않다 생각합니다. 테스트를 실패한 원인이 테스트 중인 API가 아니라 setUp에서 사용한 API의 문제일 수 있기 때문입니다. 물론 궁극적으로는 모든 API를 맞게 구현해야 하므로 모든 테스트를 통과하게 되겠지만요.

Contributor Guide