2013-09-19 3 views
1

Я пытался проверить приложение-толкатель с помощью Poltergeist. До сих пор я добился успеха только с capybara-webkit. Я создал minimal example app, который демонстрирует это в spec. Спектр проходит с capybara-webkit, но не с Poltergeist.Тестирование толкателя с помощью Capybara Poltergeist

Я что-то пропустил или это тест типа Pusher (WebSocket) невозможен с помощью Poltergeist на данный момент?

Заранее благодарен.

+0

Вы пробовали просто создать собственное соединение 'WebSocket', чтобы узнать, поддерживаются ли WebSockets? Если нет, клиент pusher-js попытается загрузить внешние JS-файлы (при условии, что вы используете один из CDN). Это может вызвать дополнительные проблемы. Также может быть полезно попытаться захватить вывод отладки от pusher-js. См .: http://pusher.com/docs/debugging#pusher_logging – leggetter

ответ

2

Обновите свою javascript-библиотеку Pusher до версии 2.1.5 (или выше), и она должна работать (при условии, что вы также используете PhantomJS 1.9 или новее).

Полтергейст автоматизирует PhantomJS. PhantomJS поддерживает WebSockets, однако это более старая версия (до появления PhantomJS 2.0, см. https://github.com/ariya/phantomjs/issues/11018). Библиотека javascript Pusher также поддерживает различные версии WebSockets, поэтому в теории они должны работать вместе.

На практике у меня возникли проблемы с его работой при использовании версии 2.1.3 библиотеки Pusher JS (и с даты этого вопроса я предполагаю, что вы использовали еще более старую версию). Начиная с 2.1.5, мои тесты полтергейста успешно тестируют функциональность Pusher.

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