2015-02-24 3 views
0

Один из разработчиков сказал мне, что PhantomJS использует старую версию Webkit, и это мешает ему всегда доверять результатам, которые он получает от использования спецификаций Capybara, используя PhantomJS.Как использовать последнюю версию Webkit для спецификаций Capybara с помощью PhantomJS?

Насколько мне известно, PhantomJS - лучший безголовый браузер, доступный для использования спецификаций Capybara. Единственной альтернативой я нашел для этой установки:

Учитывая эту информацию, мой вопрос:

  • Есть ли способ обновить версию Webkit в PhantomJS до последней версии?

  • Если ответ не соответствует предыдущему вопросу, есть ли альтернатива PhantomJS, которая использует последнюю версию Webkit?

+0

Рекомендации, такие как ваш второй вопрос, вне темы для SO. –

ответ

1

Phantom 1,9 (и ранее) использует версию WebKit, который несколько лет (примерно эквивалентно Chrome 13), в то время как только что выпустила Phantom 2,0 использует WebKit, который был выпущен в середине 2014 IIRC.

Существует довольно большая разница между количеством поддерживаемых функций HTML5 в них, поэтому почти наверняка ваш друг ссылается на Phantom 1.9. Переключение на Phantom 2.0 должно быть всем, что вам нужно сделать. Или, перефразируя, если на вашем сайте требуется какой-либо API, который не поддерживается Phantom 2.0, вы живете на грани, и вам следует подумать о том, чтобы предложить полиполк.

0

Ответ может быть, если вы хотите обновить версию самостоятельно. Имейте в виду, что команде PhantomJS потребовалось больше года, пока PhantomJS 2 не был выпущен с новой версией WebKit.

Вы можете использовать любой браузер без проблем с помощью xvfb.

+0

Должен ли я написать свой собственный драйвер Capybara, если бы я хотел использовать без браузера браузер с xvfb? Если так, разве я не буду лучше использовать Selenium в этом случае? – voltair

+0

Я не использовал ни capybara, ни селен с xvfb. Я действительно не знаю, как это можно сделать, но я уверен, что это может быть. –