私はselenium webdriver
デフォルトでカピバラ2.1.0を使用してminitest
おりtest::unit
、メソッドにアクセスする必要があるいくつかのテストでは.hover
、Chrome Webdriverを使用しています
クロムを必要とするほぼすべてのテストの最後に、空白のクロム ウィンドウが表示されます。テストを終了するには、手動で閉じる必要があります。
これが私のテストヘルパーの一部です:
def use_chrome_driver
Capybara.register_driver :selenium_chrome do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome)
end
Capybara.current_driver = :selenium_chrome
end
def setup
DatabaseCleaner.start
Capybara.current_driver = :selenium
end
def teardown
Capybara.reset_session!
Capybara.use_default_driver
DatabaseCleaner.clean
end
use_chrome_driver
setup メソッドは、chrome テストの開始時に呼び出されることによって上書きされます。すなわち:
def test_example
use_chrome_driver
...
end
開いたChromeブラウザを手動で閉じないと、これtest_example
は決して終了しません。手動で彼を終了すると、テストは終了し、エラーなしで合格しました。
では、なぜこの Chrome ブラウザ ウィンドウが毎回自動的に閉じないのでしょうか? (時々、自動的に ~15% 閉じます!)