Home  >  Q&A  >  body text

python - django error (unittest.loader._FailedTest),求大神解答。

ERROR:

[lau@192 superlists]$ python manage.py test
Creating test database for alias 'default'...
E
======================================================================
ERROR: lau.tests (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: lau.tests
Traceback (most recent call last):
File "/home/lau/anaconda3/lib/python3.5/unittest/loader.py", line 428, in _find_test_path
module = self._get_module_from_name(name)
File "/home/lau/anaconda3/lib/python3.5/unittest/loader.py", line 369, in _get_module_from_name
__import__(name)
File "/home/lau/PycharmProjects/python core/superlists/lau/tests.py", line 3, in <module>
from lists.views import home_page
File "/home/lau/anaconda3/lib/python3.5/site-packages/lists.py", line 7, in <module>
def print_list (the_list, indent = false, level = 0):
NameError: name 'false' is not defined
----------------------------------------------------------------------
Ran 1 test in 0.000s

FAILED (errors=1)
Destroying test database for alias 'default'...

tests.py:

from django.test import TestCase
from django.core.urlresolvers import resolve
from lists.views import home_page

class HomePageTest(TestCase):
def test_root_url_resolves_to_home_page_view(self):
    found = resolve('/')
    self.assertEqual(found.func,home_page)

urls.py

from django.conf.urls import url,patterns,include
from django.contrib import admin
urlpatterns = ['',
url(r'^admin/', admin.site.urls),
url(r'^$', 'lau.views.home_page', name='home'),]

views.py

from django.shortcuts import render
def home_page():
pass

不管怎么修改都是ERROR: lau.tests (unittest.loader._FailedTest)
google了很久,只看到一个类似的
原答案:I have found my mistake. I started to use backspace for all the lines and clear all the irrelevant spaces in tests.py and the problem is solved now.
我真的费解死了,解决的让人摸不着头脑,祈求大神解答,谢谢,小白再次谢过。

PHP中文网PHP中文网2740 days ago1579

reply all(1)I'll reply

  • 巴扎黑

    巴扎黑2017-04-18 09:35:35

    Thank you for your concern and help. After studying it all night, the problem has been solved.
    My questions mainly have three points:
    The first point: the problem is in tests.py
    tests.py:

    from django.test import TestCase
    from django.core.urlresolvers import resolve
    ***from lists.views import home_page***
    class HomePageTest(TestCase):
    def test_root_url_resolves_to_home_page_view(self):
    found = resolve('/')
    self.assertEqual(found.func,home_page) 
    ——————————————————————————————————————————————————————  
    from lists.views import home_page 这段代码应该改成
    from lau.views import homepage,因为使用的书籍按部就班,所以导致这种低级错误。

    Second point: After solving the above problem, the error ImportError: cannot import name 'patterns' appears
    Solution: Modify in urls.py and import home_page

    from django.conf.urls import include,url
    from django.contrib import admin
    from lau.views import home_page
    urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^$', home_page),

    The third point: This is my own perception. In Django 1.10, pattern was deprecated, but I still used pattern. This is very wrong. In addition, I didn’t read things seriously and didn’t read the official documents. Okay, I'm really ashamed of myself for making such a low-level mistake.

    Summary of errors and solutions:

     ImportError: cannot import name 'patterns'
     解决方法:弃用patterns
     TypeError: view must be a callable or a list/tuple in the case of include().
     解决方法:导入home_page模块即可解决
     SyntaxError: trailing comma not allowed without surrounding parentheses
     解决方法:检查import处标点符号
     ERROR:unittest,loader.FailedTest
     解决办法:检查tests.py文件引入是否正确,检查文件是否有空格。

    Reference related question URL:
    http://stackoverflow.com/ques...
    http://python.6.x6.nabble.com...

    reply
    0
  • Cancelreply