我正在Symfony中构建一个REST API,我想用Behat测试它(使用Mink和symfony2的behat扩展)。对于GET方法没有问题,我只是“模拟”一些数据库对象,使用“我在”步骤定义并检查响应。
但是,当测试某个元素的帖子是否有效时,我不知道如何使用Mink发送post params。我知道可以用Guzzle来完成,但我认为通过Mink和Symfony扩展会更好。
我正在寻找的是定义诸如
之类的步骤的方法When I POST to <url> the following data:
| field1 | field2 | field3 |
| value1 | value2 | value3 |
有没有简单的方法使用Mink发送它?谢谢!
答案 0 :(得分:11)
你应该这样做:
File "C:\Python27\lib\site-packages\django-1.8.3-py2.7.egg\django\core\handlers\base.py" in get_response
132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\django-1.8.3-py2.7.egg\django\views\generic\base.py" in view
71. return self.dispatch(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\django-1.8.3-py2.7.egg\django\views\generic\base.py" in dispatch
89. return handler(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\django-1.8.3-py2.7.egg\django\views\generic\list.py" in get
159. self.object_list = self.get_queryset()
File "C:\Users\user\Desktop\xxxx\views.py" in get_queryset
90. start_date = datetime.strptime(form.cleaned_data['start_date'], '%Y%m') # format is like 201012
Exception Type: TypeError at /result_list/
Exception Value: must be string, not datetime.date
这就是mink仅使用get而不是post
用于$session->getDriver()->getClient()->request ('POST', $url, $postdata);
方法的方法