1

この質問を再質問して自分を馬鹿にしないことを願っていますが、テストの実行時にフィクスチャがロードされない理由がわかりません。私はpython 2.7.5とDjango 1.5.3を使用しています。

python manage.py testserver test_winning_answersの場所で、フィクスチャをロードできますsurvey/fixtures/test_winning_answers.json

Creating test database for alias 'default'...
Installed 13 object(s) from 1 fixture(s)
Validating models...

0 errors found

私のテストクラスは正しいインポートを行っています:

from django.test import TestCase
class QuestionWinningAnswersTest(TestCase):

    fixtures = ['test_winning_answers.json']
    ...

しかし、テスト コマンドを実行しようとすると、それらが見つかりません。

python manage.py test survey.QuestionWinningAnswersTest -v3
...
Checking '/django/mysite/survey/fixtures' for fixtures...
...
No json fixture 'initial_data' in '/django/mysite/survey/fixtures'.
...
Installed 0 object(s) from 0 fixture(s)
...

明らかな何かが欠けていると思いますが、それを完全に理解することはできません...どんな提案もいただければ幸いです。ありがとう!

4

3 に答える 3

0

理由はわかりませんが、python manage.py test survey -v3表示されますInstalled 0 object(s) from 0 fixture(s)

mariodev の推奨に従い、 を調べて、を使用するようdjango/test/testcases.pyに変更しました。これは、フィクスチャが適切にロードされたことを明確に示しています。call_command('loaddata'...)verbosity=3

Installing json fixture 'test_winning_answers' from '/django/mysite/survey/fixtures'.
Installed 13 object(s) from 1 fixture(s)

フィクスチャの読み込みを調べるように促したエラーは、実際には私が犯したタイプミスでした...

于 2013-10-16T18:57:42.860 に答える
0

「/django/mysite/survey/fixtures」で「initial_data」というファイルを見つけようとして失敗しているように見えます。

「[]」だけを含む「initial_data.json」というファイルを追加してみてください

于 2013-10-16T15:10:01.063 に答える