gpt4 book ai didi

用于表单编辑的 Django 单元测试

转载 作者:行者123 更新时间:2023-12-03 10:31:14 25 4
gpt4 key购买 nike

有人可能已经开发了一种技术来缓解以下惯用单元测试的乏味:

  • 获取已填充表单数据的 url
  • POST 修改过的表单,其中编辑了一个或多个字段
  • 检查响应(利润!)

  • 第 2 步是最乏味的,在表单字段中循环。是否有任何节省时间的技巧来测试 Django 表单?

    [更新:我不是在测试 Django 表单处理。我正在验证当用户对表单进行更改时我的应用程序是否产生正确的响应。这是一个处理临床信息的应用程序,因此有很多可能的测试响应。]

    最佳答案

    这取决于您要测试的内容。我会比听起来像你做的更精细地瞄准你的测试。

    如果您需要测试的代码是表单验证逻辑,那么我会直接在您的测试中实例化表单类,将各种数据字典传递给它并调用 .is_valid(),检查是否存在正确的错误或错误。无需涉及 HTML 或 HTTP 请求。

    如果您正在测试的是 View 逻辑(IMO 应该最小化),您可能希望使用测试客户端,但您不需要在此级别进行多阶段测试或非常多的测试。在测试 View 逻辑时,我不会抓取 HTML(即测试模板),我会使用 response.context 从上下文中提取表单对象。

    如果您要测试的是模板是否包含正确的 HTML 以使表单实际工作(为了捕捉错误,例如忘记在模板中包含表单集的管理表单),我使用 WebTestdjango-webtest ,它解析您的 HTML 并使填写字段值和像浏览器一样提交表单变得容易。

    关于用于表单编辑的 Django 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2257958/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com