0

我是 Django 测试的新手,我在我的视图中传递了一个上下文,但是我的测试用例失败了。当我Question.objects.all()在 django shell 中查询时,我得到一个值

我的看法

def home(request):
    list = Question.objects.all()
    context = {'list': list}
    return render(request,'index.html',context)

测试.py

@pytest.mark.django_db
    class TestUsers:

        def test_user(self,client):
            response = client.get("/test", follow=True)
            assert len(response.context['list'])==1

虽然我发送上下文测试失败,但有什么可能改变让我的测试用例通过 在此处输入图像描述

任何帮助表示赞赏。提前致谢

4

1 回答 1

1

确保首先在测试数据库中有数据。您可以使用调试器来完成,只需在您的代码中插入pytest.set_trace()然后Question.objects.all()手动调用您的查询。此外,请检查测试配置中的DATABASES设置。

于 2016-06-23T10:19:52.310 回答