Ваши функции Cucumber должны управлять вашим приложением через общедоступный пользовательский интерфейс. Что-то вроде:
Given /^I am signed in as "([^\"]*)"%/ do |username|
visit 'sign_in'
fill_in 'Username', :with => username
click 'Sign In'
end
Поскольку метод current_user
недоступен для браузера, вам не следует использовать его в своей спецификации.
Вы можете подделать его на своих шагах, сохранив @current_user
на предыдущем шаге и затем предоставив для него средство чтения атрибутов.