Django NoReverseMatch Error while testing: 'testapp' is not a registered namespace

Hii я пытаюсь легко проверить мой url с помощью TestCase и реверса, но получаю ошибку NoReverseMatch.

  • urls.py
from django.urls import path
from . import views

app_name = "testapp"

urlpatterns = [
    path("", views.index, name="index"),
]
  • tests.py
from django.test import TestCase
from django.urls import reverse

class BasicTests(TestCase):
    def test_index(self):
        response = self.client.get(
            reverse('testapp:index'))
        self.assertEqual(response.status_code, 200)
        self.assertContains(response, "Hello World")
  • И ошибка:
ERROR: test_index (mysite.tests.BasicTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "django\myvenv\lib\site-packages\django\urls\base.py", line 71, in reverse
    extra, resolver = resolver.namespace_dict[ns]
KeyError: 'testapp'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "django\mysite\mysite\tests.py", line 7, in test_index
    reverse('testapp:index'))
  File "django\myvenv\lib\site-packages\django\urls\base.py", line 82, in reverse
    raise NoReverseMatch("%s is not a registered namespace" % key)
django.urls.exceptions.NoReverseMatch: 'testapp' is not a registered namespace

Что я здесь упускаю?

Вернуться на верх