首页 > 解决方案 > 如何在 Django 单元测试中验证我的上下文是否包含表单对象?

问题描述

我正在使用 Django 和 Python 3.7。我有这个观点...

def get(request):
    context = {}
    if not request.GET:
        tax_calculator_form = TaxCalculatorForm()
    else:
        ...

    context['form'] = tax_calculator_form
    return render(request, "tax_calculator.html", context)

我想在我的单元测试中编写某种断言来验证模型是否包含我的表单对象。我怎么做?到目前为止我有

# Simple test to verify we can get the tax form
def test_get_tax_form(self):
    response = self.client.get("/form")
    self.assertEqual(response.status_code, 200)
    self.assertTemplateUsed(response, "tax_calculator.html")

标签: djangopython-3.xunit-testingview

解决方案


响应具有包含用于呈现模板的上下文的context属性。

self.assertIn('form', response.context)

推荐阅读