Параллелизация или как сэономить ресурсы?
#1
Отправлено 08 апреля 2013 - 07:32
Подскажите, есть ли в каком-либо веб драйвере возможность управления вкладками из Selenium приложения на Java. А так же можно ли каждой вкладке указать proxy_host:port?
Если нельзя управлять вкладками, то сколько открытых драйверов может потянуть система? (Имеется ввиду потенциальная крэшо-устойчивость всей связки, не упадут ли все драйвера сразу?) 10, 100, 1000?
NOTE: Все прокси сервера локальные и нужны для параллелизации другой подсистемы.
NOTE2: Нужна на 100% безглючная система, может ли параллелизация с помощью вкладок уменьшить загрузку системы не уменьшая её стабильности?
Спасибо!
#2
Отправлено 08 апреля 2013 - 20:57
Одновременно запустить множество Selenium возможно. Про "Параллельный Selenium" частично описано в статье "Тестирование в Mail.Ru Group": http://habrahabr.ru/...ru/blog/165877/
Цитата из статьи:
Нам было важно, чтобы мы могли запускать различные тесты параллельно, и чтобы эти параллельно работающие тесты не мешали друг другу. Однако, к сожалению, Selenium в официальной поставке не всегда позволяет это делать. Особенно плохо работает параллельный запуск нескольких тестов в браузере IE или Opera на одной ноде.
Мы решили проблемы параллельной работы тестов на одной ноде, внеся исправления в Java и C++ код самого Selenium. Мы добавили блокировки на выполнение однопоточных действий, переключение фокуса окна перед теми действиями, которым оно необходимо. Также мы почининили многопоточность upload’а файлов в IE, и добавили эту функцию для Opera. На момент написания статьи все эти исправления работают с версией Selenium 2.26.
Предвосхищая возможный вопрос, хочу сказать, что мы очень хотим, чтобы наши исправления стали частью официального Selenium. Мы выкладывали наши патчи на github (например, в https://github.com/wladich/operadriver) и пересылали их разработчикам. Однако, в силу различных причин, ни один из патчей в полной мере пока еще не стал частью Selenium, хотя мы видим часть наших строк в коде последних версий Selenium. Самая свежая порция наших исправлений пока еще не открывалась, и мы будем рады, если у разработчиков Selenium есть интерес к ней.
Selenium.WebDriver для Firefox во многом зависит от своей C++ реализации firefox.dll (кстати, многие считают, что Selenium написан на Java, прямо, только на Java, и в Wikipedia также написано - а это не так). И раз сказано, что Mail.ru патчили C++, то и работа с Firefox, вероятно, не идеальна, с точки зрения многопоточности.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных