Ruby on rails Cucumber:共享步骤,放在哪里?

Ruby on rails Cucumber:共享步骤,放在哪里?,ruby-on-rails,cucumber,Ruby On Rails,Cucumber,假设我有这样一条要素线: And I fill in "Category" with "soccer" 即使此特定功能行与搜索表单相关联,在处理其他功能中的表单时,我也需要使用相同类型的步骤 你们把这种“共享”步骤放在哪里,或者换句话说,放在不同功能/场景中使用的步骤 我创建了一个名为shared_steps.rb的文件,其中包含以下内容: And /^I fill in "([^"]*)" with "([^"]*)"$/ do |field,value| fill_in field,

假设我有这样一条要素线:

And I fill in "Category" with "soccer"
即使此特定功能行与搜索表单相关联,在处理其他功能中的表单时,我也需要使用相同类型的步骤

你们把这种“共享”步骤放在哪里,或者换句话说,放在不同功能/场景中使用的步骤

我创建了一个名为shared_steps.rb的文件,其中包含以下内容:

And /^I fill in "([^"]*)" with "([^"]*)"$/ do |field,value|
  fill_in field, :with => value
end

我不认为将这种类型的步骤放在“shared_steps.rb”文件中有什么错,这似乎很好


然而,我建议尝试使用更具解释性的语言,例如“我搜索“足球”设备”。有充分的理由证明。

是的,共享步骤没有错。你可以将它们命名为“足球步骤”或任何适合你的项目的名称。谢谢你的回答。在场景的上下文中,该步骤实际上是不言自明的:)