Инициализация хитрости с капибарой - PullRequest
2 голосов
/ 27 июля 2011

Я хочу инициализировать culerity с помощью capybara в ruby ​​1.9 Я следовал https://rvm.beginrescueend.com/integration/culerity/ для интеграции jruby в culerity и добавил строку ниже в файл мои функции / support / env.rb

Culerity.jruby_invocation = File.expand_path("~/.rvm/bin/celerity_jruby")

добавлены следующие строки в мой Gemfile,

gem 'culerity'
gem 'celerity', :require => false

, когда я запускаю тест на огурец, я получил эту ошибку

 no driver called :culerity was found, available drivers: :rack_test, :selenium (Capybara::DriverNotFoundError)

Ответы [ 2 ]

1 голос
/ 11 августа 2011

Я заставил это сработать после некоторой проблемы, может показаться, что хитрость работает с ruby ​​1.9, несмотря на то, что в заметках Капибары все еще говорится иначе. Тем не менее, поддержка хитрости была разделена на другой драгоценный камень "капибара-куерлити".

Были слухи, что поддержка будет прекращена с capybara еще в феврале (исходные группы Google), я думаю, что это решение позволяет сторонним организациям поддерживать поддержку. Решение ryansch в основном верно, однако есть несколько дополнительных требований, чтобы все заработало.

Я обрисовал в общих чертах шаги ниже, предполагая, что шаги в руководстве по RVM были выполнены правильно (https://rvm.beginrescueend.com/integration/culerity/), то есть наборы гемов, символические ссылки, оболочка rvm, rvm, среда JRuby и Bash и т. Д. 1007 *

Steps

Установить драгоценный камень капибара-кулерити

Для среды Jruby в celerity ... (убедитесь, что celerity_jruby указывает на jruby, я указал на символическую ссылку под jruby @ celerity)

>> celerity_jruby -S gem install capybara-culerity

Для основной среды ruby ​​ваших проектов добавьте следующее в gemfile и установите пакет

Gemfile

... cucumber etc  ...
gem 'capybara' 
gem 'capybara-culerity'
gem 'culerity' 
gem 'celerity', :require => nil # jruby only

...

>>bundle install

добавить следующее в ваши функции / support / env.rb

require 'capybara/culerity'

...

Capybara.register_driver :culerity do |app|
  Capybara::Driver::Culerity.new(app)
end

...

Culerity.jruby_invocation = File.expand_path("~/.rvm/bin/celerity_jruby")

, затем в features / support / capybara.rb ... Я полагаю, вместо этого он может пойти в env.rb

Capybara.javascript_driver = :culerity  # celerity through culerity for JS 
Capybara.default_driver = :rake-text # non-JS eg rake-test

Надеюсь, это поможет другим.

Андрей (@andicrook)

0 голосов
/ 03 августа 2011

Добавьте capybara-culerity в ваш Gemfile и попробуйте добавить:

Capybara.register_driver :culerity do |app|
  Capybara::Driver::Culerity.new(app)
end

в ваш файл functions / support / env.rb перед вызовом

Capybara.javascript_driver = :culerity
...