Jas*_*son 2 testing rest post ruby-on-rails cucumber
对于我的几个 cuke 场景,我想将用户 POST 到一个包含 params 对象的页面,以便 Rails 将在数据库中创建一个新对象。是否有一种方便的方法可以将 POST+params 发送到操作(使用黄瓜或导轨中的某些东西),或者我是否必须使用 Net::Http 编写自己的函数?
只需访问您想要发布一些参数的控制器即可创建一个对象。
您不需要表格来执行此操作。只需将值发布到处理这些帖子的任何控制器,然后继续您的测试。控制器关心的只是获取参数,但它们会被发布。
visit "/user", :post, :firstName => "Foo", :lastName => "Bar"
Run Code Online (Sandbox Code Playgroud)
visit (url = nil, http_method = :get, data = {})
Run Code Online (Sandbox Code Playgroud)
更新:除非我弄错了 Capybara 或多或少地取代了 Webrat,并且通常认为黄瓜级别的测试应该使用实际的用户界面,而不是与界面交互的 API。也就是说,它仍然是可能的,而且我仍然发现它在项目早期很有用,我只是想测试我的控制器并在以后找出 UI。
所以在 Capybara 中,取决于您的驱动程序,但假设rack/test:
page.driver.post('/user', { firstName: "Foo", lastName: "Bar" })
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3442 次 |
| 最近记录: |