[python] Django REST framework에서의 테스트 작성 방법

Django REST framework은 웹 API를 만들고 테스트하기에 용이한 도구입니다. 이번 포스트에서는 Django REST framework에서의 테스트 작성 방법에 대해 알아보겠습니다.

테스트 작성 환경 설정

먼저, Django REST framework를 사용하기 위해 환경을 설정해야합니다. 다음은 필요한 설정 단계입니다.

  1. Django REST framework 설치
    pip install djangorestframework
    
  2. settings.py 파일에 ‘rest_framework’를 INSTALLED_APPS에 추가
    INSTALLED_APPS = [
        ...
        'rest_framework',
    ]
    

테스트 작성

Django REST framework에서의 테스트는 Django의 테스트 프레임워크를 사용하여 작성됩니다. 기본적으로 테스트 파일은 앱 디렉토리에 tests.py 파일로 작성해야합니다.

다음은 Django REST framework에서의 테스트 작성 방법에 대한 예시입니다.

from django.urls import reverse
from rest_framework import status
from rest_framework.test import APITestCase

class MyAPITestCase(APITestCase):
    def setUp(self):
        self.url = reverse('my-api-view')
    
    def test_get(self):
        response = self.client.get(self.url)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        # 추가적인 테스트 코드 작성

    def test_post(self):
        data = {'name': 'John', 'age': 25}
        response = self.client.post(self.url, data)
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
        # 추가적인 테스트 코드 작성

위의 예시에서 MyAPITestCase 클래스는 APITestCase 클래스를 상속받아 테스트를 작성하고 있습니다. setUp 메서드는 각 테스트 메서드가 실행되기 전에 실행되는 메서드로, 테스트에 필요한 초기 설정을 수행합니다.

test_get 메서드와 test_post 메서드는 각각 GET 요청과 POST 요청을 테스트하는 메서드입니다. self.client 객체를 사용하여 API를 호출하고, 응답을 검증합니다.

테스트 실행

테스트를 실행하려면 다음 명령을 터미널에서 실행하면 됩니다.

python manage.py test

테스트가 성공적으로 실행되면 결과가 출력됩니다.

마무리

위에서는 Django REST framework에서의 테스트 작성 방법에 대해 알아보았습니다. 테스트는 웹 API의 정확성과 안정성을 확인하는 중요한 단계이므로, Django REST framework를 사용하여 효율적이고 신뢰할 수 있는 테스트를 작성하는 것이 좋습니다.

더 자세한 정보는 Django REST framework 공식 문서를 참고하십시오.