2012-01-19 92 views
0

我最近升級到Rails 3,我試圖讓我的黃瓜測試運行。黃瓜/水豚/ Selenium-Webdriver錯誤?

當我運行測試,我發現了以下錯誤:

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 => "[email protected]") 
    @user.activate 
    visit path_to("the login page") 
end 
+1

你的'我登錄'步驟是什麼樣子的? – MrDanA

+0

我粘貼了我登錄問題的步驟。我也試過用path_to(「登錄頁面」)替換爲「/ login」 – blim8183

+0

這可能是你的工廠的問題嗎?這是你傳遞2個參數的唯一東西。什麼是:用戶工廠的樣子? – MrDanA

回答

0

我用撬查獲了類似的問題。

[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' 

其中固定在我的Gemfile gem 'json', :require => 'json/pure'提前BSON的。

編輯:看起來也有必要強制使用1.9.2(rvm --rvmrc --create 1.9.2)。