Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Running Django tests in PyCharm

I am trying to run a simple Django test in PyCharm, but its failing with the following stack trace-

/home/ramashishb/local/pyenv/testenv/bin/python /opt/pycharm-3.0.2/helpers/pycharm/django_test_manage.py test snippets.SimpleTest.test_simple /home/ramashishb/mine/learn/django-rest/django-rest-tutorial Testing started at 4:37 PM ... Traceback (most recent call last):   File "/opt/pycharm-3.0.2/helpers/pycharm/django_test_manage.py", line 18, in <module>     import django_test_runner   File "/opt/pycharm-3.0.2/helpers/pycharm/django_test_runner.py", line 14, in <module>     from django.test.testcases import TestCase   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/test/__init__.py", line 5, in <module>     from django.test.client import Client, RequestFactory   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/test/client.py", line 11, in <module>     from django.contrib.auth import authenticate, login, logout, get_user_model   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/contrib/auth/__init__.py", line 6, in <module>     from django.middleware.csrf import rotate_token   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/middleware/csrf.py", line 14, in <module>     from django.utils.cache import patch_vary_headers   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/utils/cache.py", line 26, in <module>     from django.core.cache import get_cache   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/core/cache/__init__.py", line 69, in <module>     if DEFAULT_CACHE_ALIAS not in settings.CACHES:   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/conf/__init__.py", line 54, in __getattr__     self._setup(name)   File "/home/ramashishb/local/pyenv/testenv/lib/python2.7/site-packages/django/conf/__init__.py", line 47, in _setup     % (desc, ENVIRONMENT_VARIABLE)) django.core.exceptions.ImproperlyConfigured: Requested setting CACHES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.  Process finished with exit code 1 

The test runs fine on console using- ./manage.py run test It looks like things are not setup before executing the tests?

Any idea?

Thanks, Ram

like image 380
Ramashish Baranwal Avatar asked Dec 05 '13 11:12

Ramashish Baranwal


People also ask

How do I run Django in PyCharm?

In the Settings/Preferences dialog ( Ctrl+Alt+S ) under the Languages and Frameworks node, click Django. In this page, choose the desired Django project. In the Manage.py tasks section, specify the following: In the field Manage script, specify the desired manage.py script.

How do I run a test File in PyCharm?

Right-click a test file or test class in the Project tool window or open it in the editor, and right-click the background. From the context menu, select Run <class name>/Run <filename> or Debug.... For a test method, open the class in the editor and right click anywhere in the method.

Is PyCharm good for Django?

One of the features of PyCharm is that it includes a support for Django. With the ability of including JavaScript features within PyCharm, it can be considered as the best IDE for Django.


1 Answers

Go to menu file > settings > Django Support and select correct settings file.

enter image description here

like image 191
Jan Míšek Avatar answered Sep 29 '22 16:09

Jan Míšek