django - 如何在测试中获取所有 Django 响应表单数据

标签 django forms testing response

我想编写一个通用的 django 测试,通过简单地请求任意编辑 URL 来测试 View ,在响应上下文中获取表单中的所有数据,然后将其 POST 到相同的 URL 而无需更改。

django 是否提供了一种从响应对象获取所有这些表单数据的简单方法,即以任何响应对象的方式?一个问题是不知道表单在 response.context 中的什么位置。

编辑:澄清:- 如果响应 html 只有一种形式,则检索该形式的所有数据,如果用户只需点击提交按钮,并将其发布到相同的 URL,就会发送这些数据。

睡过头了,使用 BeautifulSoup 解析响应内容,查找表单并提取数据,这将是一个简单的解决方案,并且比通过 response.context (例如,模板不必呈现表单,因此用户可能实际上看不到它)。唯一的缺点是它会有点慢,我有数百个这样的测试要运行。

有什么更好的主意吗?

最佳答案

您可以使用 django-webtest但在内部它与您使用 BeautifulSoup 的解决方案相同。

关于django - 如何在测试中获取所有 Django 响应表单数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15025766/

相关文章:

javascript - 使用 jquery 或 javascript 将逗号添加到禁用字段

javascript - 使用 Jest 按顺序运行 Puppeteer 测试

python - 如何同时查询多个表?

python - 超出最大递归深度,保存方法,Django

javascript - 在 angularJS 中重置表单并关闭

javascript - 为什么 HTML 表单不发送名称为 ="submit"并使用 JQuery 键入 ="submit"

javascript - 如果第二次失败,则重新运行第一个测试,mocha,javascript

java - 如何覆盖此方法的所有分支?

python - Django "for"循环和python字典问题

javascript - 未调用 AJAX 成功回调函数