Появились проблемы с браузером во время тестов. Браузер Firefox46, автотесты написаны на #webdriver . Запускаю их прямо из среды IntellijIDEA. Есть пакет из 7 тестов, общая длительность которых до трех минут. И ближе к концу браузер начинает тормозить, и заканчивается все тем,что всплывает окно “Firefox, работа прекращена”. Бывает такое, что страница открыта, но половины элементов нет.
Раньше я каждый тест заканчивал закрытием браузера. И новый тест создавал новый обьект браузера. Но меня попросили переписать тесты так, чтобы браузер не закрывался. Возможно проблемы как-то связаны и с этим.
Посоветуйте как можно разобраться с этой проблемой.
И еще есть вопрос. Какой браузер оптимальнее для автотестов? Возможно стоит попробовать перевести тесты на Chrome?
Начну в последнего:
да, можно, только нужен chrome driver
Теперь по основному вопросу: встречался с похожей проблемой ранее. Selenium очень чувствителен к версии браузера. Попробуйте обновить его или откатиться на более позднюю версию.
В хроме уже пробовал запускать эти же тесты. Работает быстрее. Но нужно дописывать прокрутку страницы в некоторых местах (в файрфоксе сама прокручивается) и не всегда находит те элементы, которые находились в файрфоксе. Нужно дописывать индивидуальные ожидания.
Пишу на python, прокрутку к нужному элементу на странице можно попробовать организовать подобным способом driver.find_element_by_name('name').send_keys(Keys.PAGE_DOWN)
можно ещё подождать, пока элемент точно станет доступен, например так: wait.until(EC.element_to_be_clickable((By.name, 'name')))
Зачем вы запускаете тесты в ff версии 46, если текущая версия ff уже 50. По общим стандартам тестирования правильная практика конфигаурационного тестирования это текущая и -2 версии прошлые. Или же отход от такой практики навязан/основан на статистике окружения пользователей вашего продукта
Возможно у вас компьютер слабенький, хотя вряд ли это могло вызвать такие симптомы.
Попробуй последнюю версию фф 50 и используй geckodriver, проверь что будет в таком случае.
Если для пробы и локально запускать тесты, то отлично пойдёт chrome, но для нормального прогона всё же лучше использовать 2 или более различных браузера
Я пробовал запускать автотесты на версиях 47 ++, но тесты не запускались. Читал, что с более новыми версиями Selenium не дружит. Поэтому запускаю в 46.
Скачай последний geckodriver и заработает с последними версиями, это типичная проблема фф, максимальная поддерживаемая стандартным драйвером это 47.0.1
И то нет смысла 47 держать, по стандартам тебе нужно проверять версию минимум 48