在PyCharm中运行Django测试
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在PyCharm中运行Django测试相关的知识,希望对你有一定的参考价值。
我试图在PyCharm中运行一个简单的Django测试,但它失败了以下堆栈跟踪 -
/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
使用-./manage.py run test
在控制台上运行正常测试看起来在执行测试之前没有设置好的东西?
任何的想法?
谢谢,拉姆
答案
转到菜单file > settings > Django Support
并选择正确的设置文件。
另一答案
我遇到了同样的问题。我发现我运行了错误的测试类型。
import unittest
class MySampleTest(unittest.TestCase):
导致错误
django.core.exceptions.ImproperlyConfigured: Requested setting API_BASE_URL, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
更改为导入到
from django.test import SimpleTestCase
Class MySampleTest(SimpleTestCase):
允许我的测试从pycharm
内部运行。
以上是关于在PyCharm中运行Django测试的主要内容,如果未能解决你的问题,请参考以下文章