2

Ruby 1.9でcapybaraを使用してculerityを初期化したいです。https: //rvm.beginrescueend.com/integration/culerity/に従ってculerityをjrubyに統合し、以下の行をfeatures / 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)
4

2 に答える 2

1

私はこれをいくつかのトラブルの後で機能させました、カピバラのメモがまだそうではないと言っているにもかかわらず、culerityはruby1.9で機能するようです。ただし、culerityのサポートは別の宝石「capybara-culerity」に分けられています。

2月にカピバラからサポートが削除されるという噂がありました(ソースグーグルグループ)。このソリューションにより、サードパーティがサポートを維持できるようになると思います。ryanschのソリューションは基本的に正しいですが、物事を機能させるためにいくつかの追加要件があります。

RVMチュートリアルの手順( https://rvm.beginrescueend.com/integration/culerity/)、つまり、gemsets、シンボリックリンク、rvm、rvmラッパー、JRubyが正しく実装されていることを前提として、以下の手順の概要を説明しました。とBash環境など

手順

カピバラ-culeritygemをインストールします

celerityのJruby環境の場合...(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

features / 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)

于 2011-08-11T18:24:59.083 に答える
0

capybara-culerityGemfile に追加して、以下を追加してみてください。

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

への呼び出しの前に、あなたの features/support/env.rb ファイルに

Capybara.javascript_driver = :culerity
于 2011-08-03T00:31:31.360 に答える