Django1.3 アプリケーションのテストに Django Selenium を使用しようとしています。テスト用のデータベース バックエンドは sqlite3 です。
これが私の設定ファイルのスニペットです。
if 'test' in sys.argv:
DB_ENGINE = 'django.db.backends.sqlite3'
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'TEST_NAME': ':memory:',
'NAME': 'database_one',
},
'database_two': {
'ENGINE': 'django.db.backends.sqlite3', ]
'TEST_NAME': ':memory:',
'NAME': 'database_two',
},
'database_three': {
'ENGINE': 'django.db.backends.sqlite3',
'TEST_NAME': ':memory:',
'NAME': 'database_three',
},
}
SOUTH_TESTS_MIGRATE = False
セレンテストを実行すると、次のエラーが表示されます
DatabaseError: no such table: django_session
ERROR
実際のところ、テストの作成中に、テーブルが次のように出力に作成されることが示されます。
Creating test database for alias 'default' (':memory:')...
Creating tables ...
Creating table django_content_type
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_user_permissions
Creating table auth_user_groups
Creating table auth_user
Creating table auth_message
Creating table django_session
他の場所でこれについて何も見つけることができないので、私は文字通りここで立ち往生しています。
PS: テストは postgres (私の実際の prod db エンジン) で正常に動作しますが、postgres はテストの実行時に db のセットアップとティアダウンに多くの時間がかかるため、sqlite3 を使用したいと考えています。
前もって感謝します :)