Издевательство над вызовами базы данных SQLite для DJango ORM pytest
Ниже приведен код одного из моих django view, который использует django ORM для получения данных, однако выполнение того же самого в pytest дает ошибку:
FAILED tests/test_views.py::TestViews::test_trendchart_view - AttributeError: объект 'NoneType' не имеет атрибута 'metricname'
metrics = Metrics.objects.all()
metric = metrics.filter(metricid=metric_id).first()
metric_name = metric.metricname
Глядя на ошибку, кажется, что метрика - None. Есть идеи, как я могу высмеять этот вызов, чтобы вернуть какой-то фиктивный объект?
Ниже приведен мой тестовый пример для справки:
@pytest.mark.django_db
class TestViews:
def test_trendchart_view(self):
kwargs={'event_id':1, 'ar_id':1, 'tcid':1, 'activemenu_id':1, 'metric_id':1}
path = reverse('trendchart', kwargs=kwargs)
request = RequestFactory().get(path)
response = treandchartsummary(request,None,**kwargs)
assert response.status_code == 200