繁体   English   中英

轨道中具有特定路线的功能测试

[英]Functional tests with specific route in rails

在我的config / routes.rb中,我创建了一个针对数据控制器的特定路由:

match '/things/:id/data' => 'data#get', :via => :get

当我设置功能测试时,我收到以下错误:

ActionController::RoutingError: No route matches {:controller=>"data", :action=>"get"}

我的测试是:

require 'test_helper'

class ActionController::TestCase
  include Devise::TestHelpers
end

class DataControllerTest < ActionController::TestCase
  setup do
    sign_in users(:one)
  end

  test "should get last data of thing" do
    get :get
    assert_response :success
  end

end

如何在测试中指定/ things /:id / data需要用于匹配数据#get?

尝试这个

test "should get last data of thing" do
  get :get, id => "ID OF YOUR THING"
  assert_response :success
end

data是一个member_action,因此您需要提供资源的ID(在您的情况下)

想知道大声,如果你改变getshow ,它的工作原理? 如果是这样,我担心覆盖类似动词名称的方法名称会搞砸。 除此之外,你的路线测试说什么?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM