Как использовать ruby-debug в Capybara с селеном - PullRequest
4 голосов
/ 16 февраля 2011

У нас есть Capybara, работающая с драйвером селена, но когда я пытаюсь использовать «отладчик» внутри шага, он не совсем работает.

например, в консоли отладки ввод «страницы» работает, но вводит «страницу».body 'висит.

У нас также были странности при попытке использовать отладчик с драйвером akephalos.С akephalos мы не могли печатать в приглашении отладки ... на самом деле мы могли, но вам приходилось нажимать клавишу несколько раз, прежде чем письмо случайно появилось в терминале.Выполнение «Ctrl-C» позволяет нам печатать, но мы получаем ошибки, такие как «DRb connection ... что-то» (извините, точной ошибки больше нет).

Я думаю, проблема в том, что драйверы, такие как селен, селени akephalos запускают тесты и сервер в одном и том же процессе, и это путает отладку ruby.Я собираюсь попробовать запустить сервер отдельно (скрипт / тест сервера) и использовать Capybara.app_host = 'http://localhost:3000', чтобы увидеть, изменится ли это.Я попробовал это с akephalos, но ничего не получилось, поскольку он все равно просто запустил еще один внутрипроцессный сервер.

Есть ли кто-нибудь, кто использует ruby-debug с Capybara и selenium?Это работает для кого-то еще?Я что-то упускаю из виду?

Ответы [ 3 ]

5 голосов
/ 17 февраля 2011

Настройка Capybara.app_host = 'http://localhost:3000' и запуск сценария / сервера -e теста в другом процессе сработали.

1 голос
/ 16 февраля 2011

У меня самого нет реального ответа, но ваш вопрос напомнил мне этот пост:

Селен не работает с огурцом / капибарой (из коробки) -MacOSX

Где спрашивающий показывает, как он использовал ruby-debug, чтобы выяснить, почему отсутствующая зависимость помогает селену не открывать браузер.

Надеюсь, это поможет!

0 голосов
/ 26 июля 2011

Я нашел это работает (в файле огурца env.rb)

Capybara.default_wait_time = 2000 # по умолчанию: 2

...