2010-12-30 10 views
7

誰かがPyCharmのDjangoテストランナーに異なる設定ファイルを使用した経験がありますか?PyCharm 1.1 - djangoテストランナーに固有の設定を使用

次のように私のプロジェクトが構成されています

+penguinproject 
+apps 
+settings 
--__init__.py 
--common.py # this one is imported by the others below 
--development.py 
--production.py 
--staging.py 
+static 
... 

manage.pyのコマンドを使用してテストを実行する(と--settings = settings.development追加)が正常に動作しますが、私は構築されたを使用したいですテストランナーで(これはIDEとの統合がうまくいったからです)。

私はこのエラーを取得するよう問題は、私の設定が正しくロードされていないことだと思い

E:\Development\django_projects\penguinproject\Scripts\python.exe "C:\Program Files (x86)\JetBrains\PyCharm 1.1\helpers\pydev\pydevd.py" --client 127.0.0.1 --port 49898 --file "C:\Program Files (x86)\JetBrains\PyCharm 1.1\helpers\pycharm\django_manage.py" test items 
Testing started at 20:36 ... 
pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower) 
pydev debugger: starting 
E:\Development\django_projects\penguinproject\lib\site-packages\path.py:32: DeprecationWarning: the md5 module is deprecated; use hashlib instead 
import sys, warnings, os, fnmatch, glob, shutil, codecs, md5 
settings file: development 
pycharm django settings imported 
Manager file: manage 
Traceback (most recent call last): 
File "C:\Program Files (x86)\JetBrains\PyCharm 1.1\helpers\pydev\pydevd.py", line 1165, in <module> 
debugger.run(setup['file'], None, None) 
File "C:\Program Files (x86)\JetBrains\PyCharm 1.1\helpers\pydev\pydevd.py", line 929, in run 
execfile(file, globals, locals) #execute the script 
File "C:\Program Files (x86)\JetBrains\PyCharm 1.1\helpers\pycharm\django_manage.py", line 15, in <module> 
run_module(manage_file, None, '__main__') 
File "c:\python26\Lib\runpy.py", line 140, in run_module 
fname, loader, pkg_name) 
File "c:\python26\Lib\runpy.py", line 34, in _run_code 
exec code in run_globals 
File "E:\Development\django_projects\penguinproject\yabe\manage.py", line 11, in <module> 
execute_manager(settings) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\core\management\__init__.py", line 438, in execute_manager 
utility.execute() 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\core\management\__init__.py", line 379, in execute 
self.fetch_command(subcommand).run_from_argv(self.argv) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\core\management\base.py", line 191, in run_from_argv 
self.execute(*args, **options.__dict__) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\core\management\base.py", line 220, in execute 
output = self.handle(*args, **options) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\core\management\commands\test.py", line 37, in handle 
failures = test_runner.run_tests(test_labels) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\test\simple.py", line 396, in run_tests 
suite = self.build_suite(test_labels, extra_tests) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\test\simple.py", line 285, in build_suite 
app = get_app(label) 
File "E:\Development\django_projects\penguinproject\lib\site-packages\django\db\models\loading.py", line 140, in get_app 
raise ImproperlyConfigured("App with label %s could not be found" % app_label) 
django.core.exceptions.ImproperlyConfigured: App with label items could not be found 

私は、コマンドラインからmanage.pyを使用して、このエラーを得ることはありません(また、IDE内から呼び出されたとき)、development.pyの設定が正しく読み込まれないと思います。デバッグでは、(load.pyモジュール内の)get_app()内のsettings.INSTALLED_APPSは空のリストです。

この設定ファイルの設定でテストランナーのセットアップに成功した人はいますか?

事前に感謝します。

+0

を私は日食で同様の問題があったと思います。 djanjo.setup()を実行するにはdjangoが必要です。 –

答えて

0

このアプリケーションでmodels.pyを作成する必要があります。

http://code.djangoproject.com/ticket/3310

+0

それは持っています:appsディレクトリには、アプリケーションごとに必要なファイル(tests.py、models.py、views.pyなど)がすべて含まれています。 models.pyファイルがない場合、コマンドラインから実行されたテストは動作しません。 – LaundroMat

1

私はあなたのプロジェクト構造の若干の修正をお勧めしたいです。これだけの、より詳細な例をチェックアウト:

http://www.revsys.com/blog/2014/nov/21/recommended-django-project-layout/

あなたはトップレベルのディレクトリと後続のすべての設定ファイルが行く同じ名前のサブディレクトリがあります表示されます。さらに別の参照用

、初期のプロジェクト構造を作成するために使用することができる「startprojectの」コマンドチェックアウト:

https://docs.djangoproject.com/en/1.10/ref/django-admin/#django-admin-startproject

HTH

関連する問題