在Ruby on Rails中,您将自己的路径放在Cucumber 1.1+中?

时间:2012-05-15 05:53:26

标签: ruby-on-rails cucumber

由于没有为Cucumber 1.1+生成paths.env文件,例如,如果我经常使用visit login_path进行测试步骤,我应该为它创建单独的步骤,还是应该使用{{ 1}}到处都是?如果它发生了变化,我可以轻松地在features目录下进行字符串替换。

谢谢!

1 个答案:

答案 0 :(得分:0)

如果真的只是干扰你visit login_path的电话问题,我会留下它们,因为它们很清晰简洁,而你(可能是)ain不需要更改登录路径助手。

但是,如果你开始看到像这样的稍微复杂的步骤,

# in features/step_definitions/profile_steps.rb

When /^I go to my profile$/ do
  visit user_path(@current_user)
end

考虑使用paths.rb模型:

# in features/step_definitions/common_steps.rb

Given /^I go to (.+)$/ do |page_name|
  visit path_to(page_name)
end

# in features/support/paths.rb

module NavigationHelpers
  def path_to(page_name)
    when /my profile/
      user_path(@current_user)
    ...
  end
end
World(NavigationHelpers)

这是对的,我喜欢paths.rbselectors.rb并将它们复制到新项目中:)我很高兴看到“厨房水槽”web_steps.rb走了。有关如何使用支持文件的示例:https://github.com/coshx/green-eggs/blob/master/features/support