单元测试包含多个提交按钮的Django表单

时间:2010-11-18 17:52:08

标签: django unit-testing forms

我正在为一个页面编写单元测试,该页面使用几个Submit按钮来控制通过我的Django应用程序的逻辑流程。

不幸的是,我无法弄清楚如何获得响应以返回单元测试框架中的提交值。发布的Django单元测试文档表明其形式如下:

post(path, data={}, content_type=MULTIPART_CONTENT, follow=False, **extra)

如果是表单的删除按钮:

<input type="submit" name="delete" value="Delete" />

我尝试将Delete值作为数据放入,即:

response = self.client.post(url, {'name':'delete'}, follow=True)

但这似乎不起作用。我需要有名称值才能运行它们触发的代码路径。在视图中,逻辑采用以下形式:

if 'delete' in request.POST:
    <do something>

我假设我以某种方式使用**以获得这些值,但我也没有太多运气。

有什么建议吗?

1 个答案:

答案 0 :(得分:6)

数据字典应将输入名称映射到值。在您的情况下,名称为delete,值为Delete。所以字典应该是:

{'delete': 'Delete'}