ошибка в настройке салата с тестом django - PullRequest
1 голос
/ 23 февраля 2012

Я пытаюсь подключить салат со стандартным тестом Django. Салат отлично работает при самостоятельной работе. Однако, когда я импортирую Client из django.test.client, я получаю сообщение об ошибке: «Невозможно импортировать настройки, поскольку переменная окружения DJANGO_SETTINGS_MODULE не определена.»

Мой steps.py выглядит так:

from lettuce import *
from django.test.client import Client

@before.all
    def set_browser():
    world.browser = Client()

@step(r'I access the url "(.*)"')
def have_the_number(step,url):
    world.response = world.browser.get(url)

Я получаю следующую ошибку

            File "/usr/local/bin/lettuce", line 9, in <module>
    load_entry_point('lettuce==0.1.34', 'console_scripts', 'lettuce')()
File "/Library/Python/2.7/site-packages/lettuce-0.1.34-py2.7.egg/lettuce/lettuce_cli.py", line 71, in main
    result = runner.run()
File "/Library/Python/2.7/site-packages/lettuce-0.1.34-py2.7.egg/lettuce/__init__.py", line 114, in run
    self.loader.find_and_load_step_definitions()
  File "/Library/Python/2.7/site-packages/lettuce-0.1.34-py2.7.egg/lettuce/fs.py", line 42, in find_and_load_step_definitions
    module = __import__(to_load)
  File "/Users/aliahsan/djcode/drftest/features/steps.py", line 2, in <module>
    from django.test.client import Client
  File "/Library/Python/2.7/site-packages/django/test/__init__.py", line 5, in <module>
    from django.test.client import Client, RequestFactory
  File "/Library/Python/2.7/site-packages/django/test/client.py", line 27, in <module>
    from django.db import transaction, close_connection
  File "/Library/Python/2.7/site-packages/django/db/__init__.py", line 14, in <module>
    if not settings.DATABASES:
  File "/Library/Python/2.7/site-packages/django/utils/functional.py", line 276, in __getattr__
    self._setup()
  File "/Library/Python/2.7/site-packages/django/conf/__init__.py", line 40, in _setup
    raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE)
ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.

Я попытался установить переменную DJANGO_SETTINGS_MODULE в файле init .py, но она тоже не работает. Может ли кто-нибудь помочь мне с этим?

1 Ответ

0 голосов
/ 24 февраля 2012

Я действительно следовал учебному пособию по началу работы и использовал команду Lettuce из папки приложения, и она не находила файл настроек для django. Получил исправление после того, как понял, работать

python manage.py harvest

команда из папки проекта, и она работает. Вы можете упомянуть приложение, следующее за сбором урожая, если вы хотите протестировать только определенное приложение в своем проекте. По умолчанию он проверяет все функции всех приложений, установленных в вашем файле настроек.

...