Экземпляр Firefox, запущенный селеном, иногда перестает отвечать
Я запускаю веб-приложение под Tomcat 7, Ubuntu 14.04, которое запускает экземпляр Firefox (в настоящее время версия 29), используя драйвер Java Selenium, чтобы делать скриншоты простых локально определенных веб-страниц.
Иногда Firefox перестает отвечать на запросы. Когда это происходит, появляется "несуществующий" экземпляр Firefox, перечисленный ps
как это:
$ ps -elfwww | grep irefox
0 S tomcat7 18004 17574 0 80 0 - 100490 futex_ 05:31 ? 00:00:01 /usr/lib/firefox/firefox -silent
1 Z tomcat7 18010 18004 0 80 0 - 0 exit 05:31 ? 00:00:00 [firefox] <defunct>
Когда Firefox запущен и работает правильно, он выглядит примерно так:
$ ps -elfwww | grep irefox
0 R tomcat7 19542 17574 38 80 0 - 156275 ? 09:38 ? 00:00:08 /usr/lib/firefox/firefox -foreground
Я сбит с толку различными параметрами командной строки, переданными Firefox в этих двух случаях. Почему "тихий" против "переднего плана"? Что можно сделать, чтобы предотвратить это?
Я не вижу сообщений о селене, напечатанных в журнале ошибок приложения.
1 ответ
Похоже, что это общая проблема (у меня тоже) с последними версиями Firefox (17+; люди говорят, что он работает с Firefox 17.0, но я не пробовал) И тот факт, что вы создаете новый экземпляр браузера для каждая веб-страница, которую вы собираетесь загрузить.
То, что я сделал, а также то, что кажется обычной логикой, - это просто создать экземпляр Firefox, загрузить с него все свои веб-страницы и в конце закрыть браузер.