Всем привет:) Недавно появилась потребность в запуске небольшой группы тестов используя PhantomJs. Для локаторов я использовал CSS, который успешно отрабатывает в WebDriver. Но при запуске через PhantomJS - в лог валиться ошибка на первом же локаторе:
WebElementLocator - _handleLocateCommand - Element(s) NOT Found: GAVE UP.
Не актуальна, потому как локаторы, написанные на CSS исправно работают
Проблема была в самом тесте, т.к. он после авторизации сразу проверял факт LogIn’a, а сайт работает с небольшой задержкой))) тест и падал. Немного подкрутив ожидание - я исправил проблему
Я использовал немного его. Как-то в продакшине мне еще не удалось его использовать в полной мере. А что скорость настолько низкая? Можно привести какие-нибудь сравнительные цифры?
На самом деле всё объяснимо: при переходе на сайт страница не грузится сразу, возникает клипсидра - ждём пока подтянутся данные из БД. И, вот, это действие довольно долгое и нивелирует все остальные.
Таким образом, что в IE, что в phantomjs скорость примерно равна и отличается секунд на 20-30.
В тесте происходит переход по нескольким десяткам таких страниц.
Думаю, если бы сама страница отрисовывалась “мгновенно” без ожидания клипсидры, разница была бы больше.
Тем не менее мне phamtomjs очень нравится своей “невидимостью”. В случае с запуском тестов через jenkins это очень спасло ситуацию со скриншотами и прочей ерундой.
Добрый день. У меня возникает проблема с видимостью элементов. При использовании firefox все отрабатывает ок, при использовании phantomjs тест падает с ошибкой
org.openqa.selenium.ElementNotVisibleException: {"errorMessage":"Element is not currently visible and may not be manipulated","request":{"headers":{"Accept-Encoding":"gzip,deflate","Connection":"Keep-Alive","Content-Length":"27","Content-Type":"application/json; charset=utf-8","Host":"localhost:32860","User-Agent":"Apache-HttpClient/4.5.1 (Java/1.8.0_66)"},"httpVersion":"1.1","method":"POST","post":"{\"id\":\":wdc:1455098301760\"}","url":"/click","urlParsed":{"anchor":"","query":"","file":"click","directory":"/","path":"/click","relative":"/click","port":"","host":"","password":"","user":"","userInfo":"","authority":"","protocol":"","source":"/click","queryKey":{},"chunks":["click"]},"urlOriginal":"/session/cd750060-cfdc-11e5-a24c-a1ab98d68d6b/element/:wdc:1455098301760/click"}}
все локаторы переписал уже на xpath, ожидания увеличил…ничего не помогает. Что можете еще посоветовать сделать? Спасибо!
Скрин делаю, елемент на странице есть, но он его почему то не видит. У меня страница на которой отображаются динамические елементы. Автоматически выбирается нужный елемент из дом структуры, ну и кликом должен добавлятся. Так вот через браузер он выбирается, через phantomjs нет. Может дело в том что данные на страницу летят через socet? Как вообще phantomjs работает с socket-ами???
Та же проблема. Заходит на сайт но перейти на другую страницу или нажать кнопку не может. Логе ошибок пишет что “errorMessage”:“Element is not currently visible and may not be manipulated”…