2014-12-04 3 views
0

을 다시 장고를 중지 할 수 있습니다 그리고 난 내가이 명령어떻게 테스트 데이터베이스를 내가 테스트를 장고에 새로운 오전

./manage.py test tests/myapp/

으로 테스트를 실행

class SimpleTest(TestCase): 
    def setUp(self): 
     self.kid = mommy.make(User) 

    def test_details(self): 
     print self.kid 
     self.assertEqual(200, 200) 

djnago 테스트 한 간단한 print hello 라인을 가지고

테스트를 실행하는 데 실제로 3 분이 걸립니다. djnago는 먼저 데이터베이스 생성을 말하고 결과를 보여주기 위해 3 분을 기다립니다.

시험에서 한 단어 씩 chnage가 나오면 다시 3 분을 기다려야합니다. 매우 짜증나.

많은 마이그레이션을 수행 할 때마다 데이터베이스를 다시 만들 수는 있습니다.

매번 데이터베이스를 빨리 만들거나 다시 만들 수있는 방법이 있습니까? 내가 django 1.7

최신 dev에 버전을 사용하고

명령 --keepdb을 가지고 있지만이

답변

1

당신은 단지 개발을 위해 테스트하는 경우 1.7 년, 나는, sqlite3를를 사용하도록 테스트 데이터베이스를 설정하는 것이 좋습니다 것은없는 기본적으로 메모리 내장 데이터베이스를 활용할 것이므로 테스트 속도를 높여야합니다. 프로덕션 환경에 방출을 밀어 계획하는 경우

나는 보통

if 'test' in sys.argv: 
    DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'} 

... 단지 내 dev에 환경에 대해 실행됩니다 local_settings에이 점을 넣어, 당신은 엔진에 대해 테스트 할 수 있습니다 프로덕션 데이터베이스 (MySQL, PostgreSQL 등)를 제공합니다.