の全体的なアイデアは気に入っていますが、何らかの理由Capybara
でアプリケーションに対して実行できません。Java
それはまったく可能ですか?
はい、それは可能であり、私たちはそれを行っています。実行中のアプリケーションをリモートでテストするには、firefox または Chromium で selenium-webdriver gem を使用するだけです。
Rack インフラストラクチャがないため、Java テスト環境からテストすることはできませんが、別の ruby テストスイートを作成して、Java アプリが開発マシンで実行されているときに rake を実行できます (または、 Rakefile)
cucumber の env.rb は次のようになります。
#
# features/support/env.rb
#
$: << File.join(File.dirname(__FILE__), "..", "..", "lib")
browser = :chrome #:htmlunit #:chrome #:firefox
host = ENV['TESTHOST'] || 'http://localhost:8080'
# may be non url was given
if not host.include?("//")
host = "https://#{host}"
end
ENV['LANG'] = "en_US.UTF-8"
require 'rubygems'
require 'capybara'
require 'capybara/cucumber'
require 'selenium-webdriver'
require 'culerity' if browser == :htmlunit
case browser
when :htmlunit
Capybara.default_driver = :culerity
Capybara.use_default_driver
else
Capybara.default_driver = :selenium
Capybara.app_host = host
end
Capybara.run_server = false
if Capybara.default_driver == :selenium
Capybara::Driver::Selenium.browser = browser
driver = Selenium::WebDriver.for browser
end
私が知る限り、カピバラは Ruby に結びついています。ただし、Java で Cucumber を使用することに興味がある場合は、cuke4duke をチェックしてください: http://wiki.github.com/aslakhellesoy/cuke4duke/
さまざまな言語を使用してステップ定義を記述し、WebDriver でブラウザーを駆動できます。