Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Django中测试表单视图时指定提交按钮_Django_Django Views_Django Tests - Fatal编程技术网

在Django中测试表单视图时指定提交按钮

在Django中测试表单视图时指定提交按钮,django,django-views,django-tests,Django,Django Views,Django Tests,我正在尝试测试django表单视图: tests.py 但我的视图会检查用于提交表单的按钮: views.py 如何模拟在测试中提交表单时使用的“注释”按钮?将注释按钮字段添加到表单数据中 添加注释按钮字段以形成注释数据 form_data = { 'comment_text': "test comment" } response = self.client.post(reverse('announcements:comment', args=[self.test_announcemen

我正在尝试测试django表单视图:

tests.py

但我的视图会检查用于提交表单的按钮:

views.py

如何模拟在测试中提交表单时使用的“注释”按钮?

将注释按钮字段添加到表单数据中

添加注释按钮字段以形成注释数据

form_data = {
    'comment_text': "test comment"
}
response = self.client.post(reverse('announcements:comment', args=[self.test_announcement.id]), form_data)
self.assertEqual(response.status_code, 404)  # invalid submit button
def my_view(request, announcement_id):
  # ...

  if request.method == "POST":
    form = CommentForm(request.POST)
    if form.is_valid():
       # ...
       if 'comment_button' in request.POST:  
           # how do I get inside this branch from a test?
           # process form
       else:
           raise Http404
form_data = {
    'comment_text': "test comment",  
    'comment_button': True
}