Ошибка огурца / капибары / селена-вебдрайвера? - PullRequest
0 голосов
/ 19 января 2012

Я недавно обновился до Rails 3 и пытаюсь запустить мои тесты Cucumber.

Когда я запускаю тесты, я получаю следующую ошибку:

wrong number of arguments (2 for 1) (ArgumentError)
./features/step_definitions/user_steps.rb:24:in `/^I am logged in$/'
features/account.feature:8:in `Given I am logged in'

Этот тест не более, чем открытие моей страницы входа.Когда я не включаю флаг @javascript в верхней части моего файла функций, он работает нормально.Когда я включаю его, я получаю сообщение об ошибке, и Selenium (я думаю) открывает экземпляр Firefox, но в браузере ничего не происходит.

РЕДАКТИРОВАТЬ:

Мой вход в систему выглядит какэто:

Given /^I am logged in$/ do
  @user = Factory(:user, :email => "cucumber@test.com")
  @user.activate
  visit path_to("the login page")
end

1 Ответ

0 голосов
/ 17 февраля 2012

Я нашел похожую проблему, используя pry.

[1] pry(#<Cucumber::Rails::World>)> step %{I go to login}
ArgumentError: wrong number of arguments (2 for 1)
from ~/.rvm/gems/ruby-1.8.7-p352/gems/multi_json-1.0.4/lib/multi_json/engines/json_common.rb:9:in 'parse'

Который был исправлен с gem 'json', :require => 'json/pure' перед bson в моем Gemfile.

Редактировать: Похоже, также необходимо было принудительно использовать 1.9.2 (rvm --rvmrc --create 1.9.2).

...