私たちのプロジェクトでは、これまでantコマンドを使用してプロジェクトの単体テストを実行してきました。このantコマンドは、manage.pyファイル(基本的にGAEとdjangoを結び付ける)を呼び出すだけです。
使用例:python manage.py test
from appengine_django import InstallAppengineHelperForDjango
InstallAppengineHelperForDjango(version='1.2')
from django.core.management import execute_manager
try:
import settings # Assumed to be in the same directory.
except ImportError:
import sys
sys.stderr.write("""Error: Can't find the file 'settings.py' in the directory containing %r.
It appears you've customized things.
You'll have to run django-admin.py, passing it your settings module.
(If the file settings.py does indeed exist, it's causing an ImportError somehow.)
""" % __file__)
sys.exit(1)
if __name__ == "__main__":
execute_manager(settings)
IDEに関しては、チームは開発者の生産性を向上させたいという願望から生まれたpycharmの使用に切り替えました。しかし、pycharmのユニットテストランナーを動作させるのに問題があります。
Pycharmsがテストを実行しようとすると、エラーが発生します:
Google App Engine SDKが見つかりませんでした!
ランナーは次のように呼び出されます。
python \ pycharm\django_test_manage.py"テストの可視性
pycharmプロジェクト設定内:
- Google App Engine SDKが追加され、有効になりました
- Pythonインタープリターを拡張してGAEへのパスを含めてみました
- django_test_manage.pyファイルを変更してGAEへのパスを含める
すべての結果は、AppEngineSDKエラーで終了します。些細なことを見落としていますか?