【问题标题】:Testing Django template with ajax GET request - ajax request isn't invoking使用 ajax GET 请求测试 Django 模板 - 没有调用 ajax 请求
【发布时间】:2016-06-18 02:47:26
【问题描述】:


我在实现模板渲染测试时遇到了一些问题。 有两种观点:

  1. 一般

  2. 包含所需数据的块

General(1) 模板显示一些数据。此模板包含用于从附加视图 (2) 中检索数据的 ajax GET 调用。我想通过测试在我的模板(1)中检查这些数据。

我使用client.get(url) 来调用我的模板 (1)。但似乎 ajax GET 请求在测试期间没有调用,我不知道为什么。

【问题讨论】:

    标签: javascript python ajax django django-templates


    【解决方案1】:

    django.test.Client 不是浏览器,它只是发出 HTTP 请求,因此对 ajax/javascript 一无所知。

    以下其中一项应该对您有所帮助

    1. 使用django.test.Client 并断言

      • 模板对正确的 url 进行了 ajax 调用,即:断言响应包含 <script>myAjaxCallTo('/some/url/')</script>
      • 单独测试 ajax 端点是否返回正确响应
    2. 使用selenium(与django.test.LiveServerTestCase一起使用)

    【讨论】:

    • 谢谢。我认为django.test.Client 不处理 ajax/javascript。
    猜你喜欢
    • 1970-01-01
    • 2020-06-17
    • 1970-01-01
    • 2020-03-03
    • 2013-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-28
    相关资源
    最近更新 更多