簡體   English   中英

ImportError:在Django項目中運行manage.py test時,沒有名為簡單的模塊

[英]ImportError: No module named simple while running manage.py test in django project

追溯:

./manage.py test my_app
Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 330, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/core/management/commands/test.py", line 30, in run_from_argv
    super(Command, self).run_from_argv(argv)
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 381, in run_from_argv
    parser = self.create_parser(argv[0], argv[1])
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 354, in create_parser
    self.add_arguments(parser)
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/core/management/commands/test.py", line 52, in add_arguments
    test_runner_class = get_runner(settings, self.test_runner)
  File "/home/zuber/projects/private-CR/env/local/lib/python2.7/site-packages/django/test/utils.py", line 152, in get_runner
    test_module = __import__(test_module_name, {}, {}, force_str(test_path[-1]))
ImportError: No module named simple

我試圖從應用程序文件夾中刪除init .py,然后出現“沒有名為app_name的模塊”。 當我從項目文件夾中刪除init .py時-控制台說“沒有名為設置的模塊”。 如何測試我的應用程序?

因此,首先,您需要將兩個__init__.py放回找到它們的位置。 它們使您可以從該模塊中導入內容。 其次,您應該將代碼發布到manage.py以便我們對發生的事情有一個更好的了解,但是在我看來,您似乎在其中有一行內容類似於import django.contrib.admin.utilimport <something> from django.contrib.admin.util 您正在使用的django發行版中已刪除了此模塊,因此您應將django.contrib.admin.util所有出現都替換為django.contrib.admin.utils

我通過刪除解決了問題

TEST_RUNNER = 'django.test.simple.DjangoTestSuiteRunner'

來自settings.py

查看運行Django 1.6之后的所有測試的相關問題

對我而言,在使用Pycharm時,問題是PyCharm測試運行程序與Django 2.0不兼容

解決的辦法是:用替換254:EOF行

  if VERSION[1] > 1 or VERSION[0] > 1:
    return DjangoTeamcityTestRunner(**options).run_tests(test_labels,
                                                         extra_tests=extra_tests, **options)

  return run_the_old_way(extra_tests, options, test_labels, verbosity)

代替:

  if VERSION[1] > 1:
    return DjangoTeamcityTestRunner(**options).run_tests(test_labels,
                                                         extra_tests=extra_tests, **options)

  return run_the_old_way(extra_tests, options, test_labels, verbosity)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM