Pytest-django RuntimeError : Доступ к базе данных запрещен,
Я тестирую свое приложение django с помощью pytest / pytest-django.
мой файл urls.py содержит
from django.urls import include, path
from . import views
urlpatterns = [
path('', include('django.contrib.auth.urls')),
path('users/', views.users, name='users'),
path('add-user/', views.add_new_user, name='add_new_user'),
]
в моем файле tests.py, у меня есть
import pytest
from django import urls
def test_users_url_resolves_to_users_view(client):
url = urls.reverse('users')
resp = client.get(url)
assert resp.status_code == 200
Я получаю RuntimeError: Database access not allowed, use the "django_db" mark, or the "db" or "transactional_db" fixtures to enable it. когда запускаю это.
В сообщении об ошибке говорится, что вы должны сделать либо
@pytest.mark.django_db
def test_users_url_resolves_to_users_view(client):
url = urls.reverse('users')
resp = client.get(url)
assert resp.status_code == 200
или
def test_users_url_resolves_to_users_view(client, django_db):
url = urls.reverse('users')
resp = client.get(url)
assert resp.status_code == 200