내 장고 응용 프로그램의 외부 마주 보는 API에 단위 테스트 케이스를 작성하려고합니다. 나는 temp
과 content
이라는 두 개의 필드를 가진 Dummy
이라는 모델을 가지고있다. 다음 함수는 content
필드를 가져 오기 위해 타사에서 호출합니다. temp
은 인덱싱 된 고유 키입니다.단위 테스트 외부 마주보고 함수
@csrf_exempt
def fetch_dummy_content(request):
try:
temp = request.GET.get("temp")
dummy_obj = Dummy.objects.get(temp=temp)
except Dummy.DoesNotExist:
content = 'Object not found.'
else:
content = dummy_obj.content
return HttpResponse(content, content_type='text/plain')
다음 단위 테스트 케이스가 있습니다.
는def test_dummy_content(self):
params = {
'temp': 'abc'
}
dummy_obj = mommy.make(
'Dummy',
temp='abc',
content='Hello World'
)
response = self.client.get(
'/fetch_dummy_content/',
params=params
)
self.assertEqual(response.status_code, 200)
self.assertEqual(response.content, 'Hello World')
내가 테스트 케이스를 실행할 때마다, 그것은 exception
로 전환되고 Object not found.
대신 Hello World
반환합니다. 추가 디버깅을 수행 한 결과 temp
은 요청 객체의보기 기능에서 항상 None
이라는 메시지를 전달했지만 params
에 전달했습니다.
내가 누락되어서 알아낼 수 없을 수도 있습니다. 이러한 종류의 기능을 테스트하는 적절한 방법은 무엇입니까?
고마워요. – Pattu