我在我的 Ruby on Rails 项目中使用 Cucumber 进行 BDD 开发,我对 path.rb 如何处理 rails 应用程序中使用的路径感到有些困惑。
鉴于我有:
class Parent < ActiveRecord::Base
has_many :children
end
class Child < ActiveRecord::Base
belongs_to :parent
end
我有以下黄瓜功能:
Scenario: A test feature
Given I am on the parent page
When I follow "Link to Children"
Then I should be on the children list page
路径定义为:
def path_to(page_name)
case page_name
when /the children list page/
'/parents/:id/children'
end
我遇到的问题是运行该功能时出现以下错误:
Spec::Expectations::ExpectationNotMetError: expected: "/parents/:id/children",
got: "/parents/1726/children" (using ==)
我真的不在乎 :id 是什么。我应该怎么做?这甚至可以使用默认的 Web 步骤吗?我是否以错误的方式思考问题?