2014-01-10 10 views
5

Как проверить консоль браузера на наличие ошибок?Проверьте вывод консоли браузера на Ruby

Например, у меня есть браузер (chrome of firefox) с Selenium, и я сделал некоторые действия с Selenium WebDriver. После того, как я хочу знать, есть ли какие-либо ошибки в веб-консоли.

+0

Какой проблему с собственным 'begin..rescue..end' Руби? –

+2

Ничего. Мое приложение не сработало. Я хочу проверить веб-консоль. –

+0

Хорошо ... если вы получите ответ, сообщите мне. Я хотел бы знать, возможно ли это или нет. –

ответ

0

Версия 2.38 из рубинового драгоценного камня selenium раскрывает API регистрации.

http://selenium.googlecode.com/git/rb/CHANGES

Это позволяет получить доступ журналы хром консоли.

https://code.google.com/p/selenium/wiki/Logging

Вот пример в Java, но вы должны быть в состоянии легко перевести на рубин;

java example

+0

Вы можете получить доступ к журналам с более ранними версиями привязок Ruby, если вы используете RemoteWebDriver, но вам нужно обезглавить код, чтобы добавить возможность вызова методов API –

+0

http://selenium.googlecode.com/git/rb/CHANGES не работает –

+0

@KickButtowski Этот ответ старше 3 лет. Извиняюсь за то, что мы не обновляем все ссылки в моих ответах. Возможно, вы можете найти новую ссылку и отправить редактирование? –

0

Я бы рекомендовал добавить спасательные блоки, такие как @Arup. Кроме того, вы можете добавить отладочный так, что вы можете пройти через ошибки в консоли

begin 
    puts "Your code here" 
rescue => e 
    debugger 
end 

Не забудьте добавить рубиновый-отладки в вашем Gemfile или установить его с помощью:

$ sudo gem install ruby-debug 

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

Я настоятельно рекомендую использовать драгоценный камень с лучшими ошибками. Check out this episode on RailsCasts about it. Этот драгоценный камень позволяет просматривать и взаимодействовать с исключениями в вашем веб-браузере. Это спасатель жизни.

Еще один классный проект, с которым я могу справиться, - rack-webconsole. Этот драгоценный камень позволяет вам буквально открыть командную строку в любое время в вашем веб-браузере и взаимодействовать с вашим Rails-приложением. Не уверен, что этот камень все еще поддерживается или нет.

Наконец-то обязательно получите RailsPanel для хром. Это добавление дает вам некоторую потрясающую информацию о вашем приложении Rails в дополнении разработчика.

1

Я попытался взять консольную ошибку, как:

def check_console_log 
    console_log = @browser.driver.manage.get_log(:browser) 
    if console_log != nil 
     raise(console_log) 
    end 
end 

, а также записывать их в файл

def write_log(file_path) 
    work_log = @browser.driver.manage.get_log(:browser) 
    messages = "" 
    work_log.each { | item | messages += item.message + "\n"} 
    File.write("#{file_path}.log", messages) unless messages == "" 
end 

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

  • Нет связанных вопросов^_^