Итак, я пытаюсь настроить свою локальную систему, чтобы помочь завершить существующий проект от работодателя, который использует только рельсы. Они хотят, чтобы я в первую очередь сосредоточился на тестировании rspec, так как проект почти функционален, и мне нужно конкретизировать то, что они пропустили. Тем не менее, я не могу получить 'rake spec' для создания моей тестовой папки. Как таковая, папка test содержит несколько базовых тестов для входа в систему с использованием Selenium (я их не писал). Вот след от ошибки:
/opt/local/lib/ruby/gems/1.8/gems/selenium-client-1.2.18/lib/selenium/rspec/spec_helper.rb:2:in 'require': no such file to load -- spec (LoadError)
from /opt/local/lib/ruby/gems/1.8/gems/selenium-client-1.2.18/lib/selenium/rspec/spec_helper.rb:2
from /Users/cliffhess/ampms/spec/integration/user_registration_name_not_blank_spec.rb:5:in 'require'
from /Users/cliffhess/ampms/spec/integration/user_registration_name_not_blank_spec.rb:5
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/configuration.rb:386:in 'load'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/configuration.rb:386:in 'load_spec_files'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/configuration.rb:386:in 'map'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/configuration.rb:386:in 'load_spec_files'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/command_line.rb:18:in 'run'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/runner.rb:55:in 'run_in_process'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/runner.rb:46:in 'run'
from /opt/local/lib/ruby/gems/1.8/gems/rspec-core-2.5.1/lib/rspec/core/runner.rb:10:in 'autorun'
from /opt/local/lib/ruby/gems/1.8/bin/rspec:19
rake aborted!
Как так, я почти уверен, что понимаю проблему (может быть?). В строке 2 в spec_helper.rb клиентов selenium указывается require 'spec'
, которая, если я не ошибаюсь, говорит, что в программе selenium-client должна быть папка с именем spec
, в которой содержатся все элементы rspec. У selenium-client этой папки нет, так что я немного запутался в том, как он вообще должен требовать эту папку. Если я изменю строку на require 'rspec'
, в этой воображаемой папке спецификаций появятся многочисленные другие ссылки на вещи, которые также приведут к прерыванию rake.
Я использую Ruby 1.8.7, Rails 3.0.3 и последнюю версию selenium. Любая помощь была бы удивительной, я застрял в поисках этой проблемы уже более суток и не смог найти решение.