Skip to content

Errors when running tests on Django 6 #2276

@mharju

Description

@mharju

I am disabling the DDT as per the documentation in tests. This has worked fine but in my new Django 6 based projects I am getting this traceback:

Found 0 test(s).
Traceback (most recent call last):
  File "/code/project/manage.py", line 23, in <module>
    main()
    ~~~~^^
  File "/code/project/manage.py", line 19, in main
    execute_from_command_line(sys.argv)
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/__init__.py", line 443, in execute_from_command_line
    utility.execute()
    ~~~~~~~~~~~~~~~^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/__init__.py", line 437, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/commands/test.py", line 24, in run_from_argv
    super().run_from_argv(argv)
    ~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/base.py", line 416, in run_from_argv
    self.execute(*args, **cmd_options)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/base.py", line 460, in execute
    output = self.handle(*args, **options)
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/commands/test.py", line 63, in handle
    failures = test_runner.run_tests(test_labels)
  File "/opt/venv/lib/python3.14/site-packages/django/test/runner.py", line 1145, in run_tests
    self.run_checks(databases)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/test/runner.py", line 1067, in run_checks
    call_command("check", verbosity=self.verbosity, databases=databases)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/__init__.py", line 195, in call_command
    return command.execute(*args, **defaults)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/base.py", line 460, in execute
    output = self.handle(*args, **options)
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/commands/check.py", line 81, in handle
    self.check(
    ~~~~~~~~~~^
        app_configs=app_configs,
        ^^^^^^^^^^^^^^^^^^^^^^^^
    ...<4 lines>...
        databases=options["databases"],
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/opt/venv/lib/python3.14/site-packages/django/core/management/base.py", line 492, in check
    all_issues = checks.run_checks(
        app_configs=app_configs,
    ...<2 lines>...
        databases=databases,
    )
  File "/opt/venv/lib/python3.14/site-packages/django/core/checks/registry.py", line 89, in run_checks
    new_errors = check(app_configs=app_configs, databases=databases)
  File "/opt/venv/lib/python3.14/site-packages/django/contrib/admin/checks.py", line 138, in check_dependencies
    if not _contains_subclass(
           ~~~~~~~~~~~~~~~~~~^
        "django.contrib.auth.middleware.AuthenticationMiddleware", settings.MIDDLEWARE
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ):
    ^
  File "/opt/venv/lib/python3.14/site-packages/django/contrib/admin/checks.py", line 38, in _contains_subclass
    candidate_cls = import_string(path)
  File "/opt/venv/lib/python3.14/site-packages/django/utils/module_loading.py", line 30, in import_string
    return cached_import(module_path, class_name)
  File "/opt/venv/lib/python3.14/site-packages/django/utils/module_loading.py", line 15, in cached_import
    module = import_module(module_path)
  File "/usr/local/lib/python3.14/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1398, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1371, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1342, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 938, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 759, in exec_module
  File "<frozen importlib._bootstrap>", line 491, in _call_with_frames_removed
  File "/opt/venv/lib/python3.14/site-packages/debug_toolbar/middleware.py", line 19, in <module>
    from debug_toolbar.toolbar import DebugToolbar
  File "/opt/venv/lib/python3.14/site-packages/debug_toolbar/toolbar.py", line 22, in <module>
    from debug_toolbar.store import get_store
  File "/opt/venv/lib/python3.14/site-packages/debug_toolbar/store.py", line 12, in <module>
    from debug_toolbar.models import HistoryEntry
  File "/opt/venv/lib/python3.14/site-packages/debug_toolbar/models.py", line 5, in <module>
    class HistoryEntry(models.Model):
    ...<10 lines>...
            return str(self.request_id)
  File "/opt/venv/lib/python3.14/site-packages/django/db/models/base.py", line 136, in __new__
    raise RuntimeError(
    ...<3 lines>...
    )
RuntimeError: Model class debug_toolbar.models.HistoryEntry doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

What do I need to do differently when running tests in Django 6?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions