nuclear_skillet21011
@nuclear_skillet21011
активно изучающй ИБ

Есть ли аналоги у Selenium?

Интересует есть ли у мощного Selenium`a аналоги или форки первичный гуглинг на эту тему нечего не дал,
Интересует возможность на писания бота юзающева браузер "как человек" .Первичная информация о Selenium даёт понять что тот хорош но есть и не достатки:

Некоторые проблемы WebDriver (из сети и личного опыта):

-бывает, что поведение отличается в разных браузерах;

-иногда возникают сложности с поиском элементов (XPath и другие методы иногда просто не работают, хотя должны);

-необъяснимые падения драйвера прямо посреди теста;

-взаимодействие возможно только с первой вкладкой браузера, драйвер позволяет открывать новые вкладки и новые ---окна, но не позволяет в них работать;

-необходимо четко продумывать архитектуру теста, часто использовать assert или ожидания, чтобы тест умел «думать», --когда делать и когда нет.


Поэтому хотелось бы изучить варианты (если они есть).

Спасибо за внимание.
  • Вопрос задан
  • 14599 просмотров
Решения вопроса 2
@GeneD88
QA
Некоторые проблемы WebDriver (из сети и личного опыта):

-бывает, что поведение отличается в разных браузерах;

Т.к. сами браузеры ведут себя по разному. И в случаях, когда поведение отличается - пишется измененный скрипт.

-иногда возникают сложности с поиском элементов (XPath и другие методы иногда просто не работают, хотя должны);

Правильный xpath - работает всегда.
Опять же, многое зависит так же от технологии, которая используется в app'e и от стиля написания кода девелоперами.
-необъяснимые падения драйвера прямо посреди теста;

Проверять нагрузку. Ранить локально и смотреть что происходит на странице.
-взаимодействие возможно только с первой вкладкой браузера, драйвер позволяет открывать новые вкладки и новые ---окна, но не позволяет в них работать;

webdriver позволяет и открывать, и закрывать, и работать с новыми\старыми вкладками.
-необходимо четко продумывать архитектуру теста, часто использовать assert или ожидания, чтобы тест умел «думать», --когда делать и когда нет.

Придет с опытом.
Ответ написан
alekciy
@alekciy
Вёбных дел мастер
Если и есть, то наверное что-то специфичное только. Т.е. в целом по больничке можно считать, что вот прямо так готового коробочного аналога webdriver нет. Наверное допишу по недостаткам:
- невозможно сохранить файл через диалоговое окно браузера.

Пожалуй дополню/уточню имеющиеся:
- поведение отличается да, но в принципе все варианты описаны в документации, где-что будет работать, а где не будет, к сожалению ситуация неизбежна;
- возможно неточный XPath (как вариант, поиск в DOM данных которые должны подгружаться в момент Х, но на момент запроса их еще нет)? Активно работаю с XPath и проблем не замечал;
- нестабильный это да, может просто большая нагрузка на одну ноду? Есть смысл посмотреть в сторону прокси от Яндекса, они там в опенсорц запили свой вариант.

В целом если нужно "как человек", то как ни крути, нужно использовать PhantomJS, дописать нужное поведение к нему на JavaScript и запускать его в режиме webdriver. Это не очень подходит для тестов (т.к. по сути работа сайта не проверяется в ХХ браузерах), но может неплохо отработать для бота.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
formatko
@formatko
Java developer
Посмотрите Puppeteer
https://pptr.dev/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы