Skip to content

Django Testing #

Find similar titles

3회 업데이트 됨.

Edit
  • 최초 작성자
    yeye
  • 최근 업데이트

Structured data

Category
Programming

Django Testing #

Django를 통해 웹 어플리케이션 개발시, 작성한 코드가 잘 동작하는지 확인하기 위한 테스팅 모듈이 필요하다. 개발자가 새로운 코드를 생성하거나 기존 코드를 수정하였을 경우 테스팅 모듈을 통하여 코드의 유효성을 확인 할 수 있다. 테스트에서 fail이 발생한 경우 개발소스 혹은 테스트 코드를 수정하여 모든 테스트가 success 되도록 해야 한다.

Django에서 테스트 코드 작성하기 #

TestCase 이용하기 #

테스트 코드를 작성하기 위한 방법은 여러가지가 있지만 django에서 제공하는 django.test.testCase를 사용하는 것이 가장 흔히 사용하는 방법이다. 다음과 같이 임포트하고 테스트 class 한개를 만든다.

from django.test import TestCase

class MyTests(TestCase):
    ...

TestCase를 상속받은 모든 class는 테스트코드 러닝시 자동으로 실행되며 테스트 class의 테스트 함수명은 "test_"로 시작해야 자동으로 실행이 된다.

Django에서 작성한 테스트코드 러닝하기 #

작성한 모든 테스트 코드를 실행하기 위해 아래 command를 이용한다.

$ python manage.py test

모든 테스트가 아니라 테스트 중 일부 모듈만 실행하기 위해서는 다음과 같이 하면된다.

$ python manage.py [module name or path]

또한, 여러가지 옵션을 통해 원하는 형태로 테스트 할 수 있다. 다음은 일부 옵션에 대한 설명이다.

  • -v, --verbosity: {0, 1, 2, 3}, Verbosity level
  • --failfase: fail이 발생하는 test 중단
  • -p, --pattern: 실행하고자하는 테스트 파일명 패턴 지정

테스트 데이터베이스 #

테스트에 사용하는 데이터베이스는 실제 시스템에서 사용하는 데이터베이스와 별도로 존재해야한다. Django에서는 test를 수행할때마다 임시 테스트용 데이터베이스를 생성하고 파기할 수 있는 기능을 제공한다.

테스트 데이터베이스의 이름은 실제 사용하는 데이터베이스명(django settings.DATABASES의 NAME으로 정의되어있는 이름)에 prefix 'test_'를 붙인것이 디폴트이다.

Incoming Links #

Related Data Sciences #

Suggested Pages #

0.0.1_20230725_7_v68