我試圖讓水豚設置醬連接來做一些我寫的寶石的自動化測試。我使用Combustion在localhost:9000上啓動一個服務器,以便在瀏覽器中進行測試。帶水豚和醬汁連接的自動瀏覽器測試。 GET「__identify__」路由錯誤
我spec_helper.rb
看起來喜歡這樣的:
require 'rubygems'
require 'bundler'
Bundler.require :development
require 'rspec/rails'
require 'capybara/rails'
require 'capybara/rspec'
require 'sauce/capybara'
require 'sauce/parallel'
Combustion.initialize!
# Engine config initializer
require 'setup_credentials.rb'
RSpec.configure do |config|
#config.use_transactional_fixtures = true
end
Capybara.default_driver = :sauce
Capybara.server_port = 9000
BROWSERS = [
["Mac", "Firefox", "17"]
]
index = ENV["TEST_ENV_NUMBER"] != "" ? (ENV["TEST_ENV_NUMBER"].to_i - 1) : 0
platform = BROWSERS[index]
Sauce.config do |config|
config[:os] = platform[0]
config[:browser] = platform[1]
config[:version] = platform[2]
end
在另一端我運行:
java -jar Sauce-Connect.jar MY-USERNAME MY-API-KEY -p localhost:9000
我有一個名爲miso_spec.rb
規格如下所示:
require "spec_helper"
describe "File upload", :sauce => true do
it "should go through locally" do
visit "http://localhost:9000"
fill_in 'search', :with => "platform"
click_button "searchButton"
page.should have_content "Screencasts"
end
end
而我通過執行以下命令運行它:啓動此命令後
rspec -P "spec/features/miso_spec.rb"
幾秒鐘,我的服務器上充斥着下面的GET請求,並無限期繼續。
Started GET "/__identify__" for 127.0.0.1 at 2013-05-31 13:51:05 +0200
** [Raven] User excluded error: #<ActionController::RoutingError: No route matches [GET] "/__identify__">
ActionController::RoutingError (No route matches [GET] "/__identify__"):
當我檢查Saucelabs.com視頻,我可以看到,瀏覽器就不會使它對http://localhost:9000
。然而,奇怪的是,當我控制測試會話時(您可以在瀏覽器測試的Sauce Labs上點擊視頻,以便在控制時運行),手動導航到此地址會啓動本地託管頁面。
我相當肯定我排除了燃燒成爲問題的根源。在這個端口上啓動一個標準的Rails服務器仍然會導致上面發佈的路由錯誤。我不知道如何繼續。謝謝。
第6-8行不是一個好的答案,因爲這個文件到處都不一樣 – jigfox
爲什麼downvote?上述spec_helper.rb的6-8。我認爲這很清楚。 –
最好指定不需要哪些文件,以便讀者不必計算行數。 –