2015-11-09 4 views
1

У меня есть Ruby On Rails приложение, которое работает тесты функций с использованием Капибара, Полтергейст и PhantomJS.Блокировка версии PhantomJS, что полтергейст использует

Версия 2.0.0 от PhantomJS имеет довольно значительную ошибку, которая ломает множество тестов (https://github.com/ariya/phantomjs/issues/12506), поэтому я хотел бы заставить приложение использовать другую версию PhantomJS при запуске тестов.

Возможно ли это из-за конфигурации Poltergeist, чтобы вызвать ошибку или предупреждение, если эта ошибка используется, или это лучший способ просто поместить заметку в readme приложения, говоря: «Не используйте версию 2.0.0 из-за к этой ошибке?

на данный момент моя Капибара/Полтергейст конфигурация очень проста:

Capybara.register_driver :poltergeist do |app| 
    Capybara::Poltergeist::Driver.new(app, :timeout => 90) 
end 
+0

Просто сделайте '' phantomjs -v'' и жаловаться, если это неправильная версия. – pguardiario

ответ

1

Как @pguardiario прокомментировал, вы можете просто сделать что-то вроде

if `phantomjs -v`.start_with? '2' 
    #output whatever kind of warning you want 
end 

однако полтергейст мастер филиала имеет исправление этот конкретный вопрос, так что вы можете просто попробовать использовать что вместо

+0

это не проблема Полтергейста, это PhantomJS. – sevenseacat

+0

@sevenseacat да, но я работал над проблемой PantomJS в Poltergeist, сейчас она находится в ведущей ветке и будет в следующем выпуске –

+0

Я вижу сделку, которая имеет дело с этим. Я не уверен, как это работает, но после обновления Poltergeist до 1.8 мои спецификации больше не могут найти поля файлов. – sevenseacat

Смежные вопросы