Django Проблемы с обнаружением тестов
я запустил ./manage.py test
и получил следующее сообщение err
...
test_create_default_action_with_deadline (masoon.anomalies.tests.anomaly.AnomalyCreateDefaultAction) ... ok
masoon.actions.admin (unittest.loader._FailedTest) ... ERROR
masoon.actions.models (unittest.loader._FailedTest) ... ERROR
masoon.anomalies.models (unittest.loader._FailedTest) ... ERROR
...
======================================================================
ERROR: masoon.actions.admin (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: masoon.actions.admin
Traceback (most recent call last):
File "/usr/lib/python3.10/unittest/loader.py", line 470, in _find_test_path
package = self._get_module_from_name(name)
File "/usr/lib/python3.10/unittest/loader.py", line 377, in _get_module_from_name
__import__(name)
File "/home/vahid/project/py/django/masoon/actions/admin/__init__.py", line 1, in <module>
from .actions import ActionsAdmin
File "/home/vahid/project/py/django/masoon/actions/admin/actions.py", line 8, in <module>
class ActionsAdmin(AbstractBaseAdmin):
File "/home/vahid/project/py/django/masoon/.venv/lib/python3.10/site-packages/django/contrib/admin/decorators.py", line 100, in _model_admin_wrapper
admin_site.register(models, admin_class=admin_class)
File "/home/vahid/project/py/django/masoon/.venv/lib/python3.10/site-packages/django/contrib/admin/sites.py", line 126, in register
raise AlreadyRegistered(msg)
django.contrib.admin.sites.AlreadyRegistered: The model Action is already registered with 'actions.ActionsAdmin'.
filetree:
...
├── actions
│ ├── admin
│ │ ├── action_report.py
│ │ ├── actions.py
│ │ ├── answer.py
│ │ ├── __init__.py
│ ├── api
...
│ ├── apps.py
│ ├── __init__.py
│ ├── models
│ │ ├── action.py
│ │ ├── action_report.py
│ │ ├── answer.py
│ │ ├── __init__.py
├── infrastructure
│ ├── asgi.py
│ │ ...
│ ├── urls.py
│ └── wsgi.py
├──settings
...
│ ├── apps.py
│ ├── files.py
│ ├── __init__.py
│ ├── logging.py
│ ├── main.py
│ ├── middlewares.py
...
├── manage.py
...
но когда я запускаю ./manage.py test modulname.tests
все тесты проходят и django не обнаруживает мои модели как тестовые.
мои модули настройки __init__
выглядят следующим образом :
...
from .apps import *
from .middlewares import *
from .drf import *
...
__init__
теста или модели или др. модуля что-то вроде этого
from .anomaly import AnomalyCreateDefaultAction, AnomalyAPITest
Почему unittest обнаруживает мои классы администраторов и мои классы моделей
как тест для запуска