django - 如何在 Django 测试用例中获取测试 http 请求?

标签 django forms testcase

我正在使用仅使用 GraphQL API 的解决方案,因此我的所有逻辑都在表单中。我的其中一个表单的保存方法接收到 http 请求。我使用请求获取一些数据用于邮寄。所以,我正在尝试制作这种形式的测试用例,但我不知道如何传递请求对象。

class SignUpForm(forms.ModelForm):
  ...
  def save(self, request, *args, **kwargs):
    ...

如何将请求对象传递给测试用例中的表单?

最佳答案

您可以实例化 HttpRequest 并将其用作测试中的常规请求:

    fake_request = HttpRequest()
    fake_request.user = AnonymousUser()
    fake_request.META['SERVER_NAME'] = site.domain
    fake_request.META['SERVER_PORT'] = 80

    s = SessionStore()
    s.create()
    fake_request.session = s

在您的情况下,您可能需要填写更多字段

关于django - 如何在 Django 测试用例中获取测试 http 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64040306/

相关文章:

python - 如何在 Django 中过滤 DateTimeField 的日期?

python - 在 Mac OS X 上安装 libpq-dev

php - 在提交时从外部表单标签向表单添加元素

forms - 使用组件的 Angular 2 表单级别验证

javascript - 每个 jquery AJAX 发布一个可变长度的表单

python - 在 unittest tearDown 方法中断言是否可以?

python 在一个测试函数中测试代码覆盖率和多个断言

python - 使用一对一字段搜索查询集

python - Django 中的动态配置

grails - 如何在 grails 测试用例中使用 executeQuery?