如何在minitest中引用create方法来测试控制器?

时间:2018-01-18 21:25:36

标签: unit-testing controller routes ruby-on-rails-5 minitest

我使用Rails 5和minitest。如何在我的测试中引用创建URL来测试控制器的创建方法?在我的路线文件中,我有

resources :items

在我的测试文件中,我有

  test "do create" do
    person = people(:one)
    rating = 10
    post items_create_url, params: {person_id: person.id, rating: rating}

    # Verify we got the proper response
    assert_response :success
  end

但是,上述测试正在用

进行死亡
undefined local variable or method `items_create_url'

错误。在测试中引用我的创建方法的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

在RESTful路线中,模型被认为是一组东西。在创建新项目时,您将新项目(数据)发布到现有项目的集合,因此Rails使用:

post items_url, params: {person_id: person.id, rating: rating}

有关路由的更多信息,Rails指南确实是最佳信息来源:http://guides.rubyonrails.org/routing.html