March 2nd, 2017

Machete

Как Selenium делает CLICK

Представим, что у нас есть веб-сервис, тяжело нагруженный джава-скриптом. И по щелчку мышкой на элементе (неважно, левой кнопкой или правой) силами этого скрипта должно выводиться некое меню. Что делает Селениум? Он скроллит окно браузера так, чтобы элемент умещался в видимой части окна целиком. А после уже делает click. При этом, действия происходят асинхронно (убиться веником, не понимаю почему, но факт, выстраданно) и если меню пропадает от любого чиха (как у меня) то возможен случай, когда сначала эмулируется щелчок, а уже потом сдвинутся полосы прокрутки - и меню, соответственно, немедленно пропадет. На последнем Хроме это происходило у меня примерно в четверти всех тестов. Поэтому...
Collapse )

Но это еще не все фортели, которые выкидывает Selenium, и о которых можно узнать только на горьком опыте...