Как закрыть webkit_server в capybara-webkit при работе внутри Sidekiq

Я пытаюсь запустить каждую сессию capybara-webkit внутри рабочих Sidekiq.

Для каждого работника я создаю сеанс, подобный этому s = Capybara::Session.new(:webkit)

После того, как работа сделана, я закрываю сеанс, вызывая s.driver.browser.reset!

Но количество процессов webkit_server продолжает увеличиваться, похоже, процесс никогда не освобождался после завершения работы Sidekiq worker.

Как я могу убедиться, что процесс webkit_server закрыт правильно? Есть ли способ вручную закрыть сервер?

Я использую capybara-webkit-1.1.1 с Qt 4.8 на Ubuntu 12.04.

Спасибо


person Steven Yue    schedule 12.06.2014    source источник


Ответы (1)


Я мог бы придумать (уродливый и грязный) обходной путь, но сейчас webkit_servers умрут.

pid = capybara_ag.driver.inspect.scan(/@pid=(\d+)/).flatten.first
`kill -9 #{pid}`

Или вы можете перезапустить приложение.

person Pedro Ivan    schedule 13.10.2015