2012-12-21 12 views
5

Zastanawiałem się:Selen Webdriver Wsparcie dla JavaFX 2.0 Webkit lub QT5 Webkit (cel: bezgłowy WebKit)

  • Czy ktoś już myśli o wdrażaniu webdriver interfejs dla osadzonego JavaFX 2.0 Webkit Browser lub nowy QT5 - Webkit.
  • Czy ktoś ma jakieś wskazówki na temat niektórych projektów Github/Bitbucket/GoogleCode zmierzających w tym kierunku?

Dlaczego? Dodałoby to kolejną przeglądarkę wieloplatformową i mam nadzieję, że może być bez głowy z nowym silnikiem renderującym Webkit. W tej chwili używam SafariDriver na MacOSX lub ChromeDriver. To działa, ale chromowanie często mnie gryzie, kiedy Chrome robi autoupdate i łamie chromedriver.

Projekt najbliższy bezgłowej implementacji Webkita (w tym robienie zrzutów ekranu) to, moim zdaniem, phantomjs (webkit QT-4.8) + ghostdriver (dodatek webdriver do phantomjs jako implementacja javascript). W tej chwili phantomjs ma swoje dziwactwa z renderowaniem czcionek i dzielenia wyrazów (­).

Podczas testowania przykładów przeglądarki QT5 wydaje się, że czcionka/nieśmiałe renderowanie zostały naprawione. Teraz mogę albo czekać, aż phantomjs dogonią qt5.

Innym pomysłem jest zainstalowanie Java 7, która zawiera Javafx 2.0 i implementację WebView, który może być kontrolowany również przez webdriver-protcol. Nowsza wersja JavaFx 2.0 zawiera możliwość robienia zrzutów ekranu scen JavaFX, co byłoby pomocne.

Referencje:

Wesołych Świąt,

Jan

+0

JavaFX WebView aktualnie nie obsługuje migawek bez widoku z góry. Żądanie funkcji do śledzenia, głosowania lub komentowania to [RT-26571 "Zapewnij wsparcie dla robienia pełnych stron migawek z odsłon") (http://javafx-jira.kenai.com/browse/RT-26571) – jewelsea

+0

Headsup: Phantomjs 2 nadal nie jest gotowy, webkit JavaFX8 działa we wszystkich testach. Brak problemów z renderowaniem. Mogę śmiało wdrożyć przeglądarkę JavaFX z JsonWireProtocol dla Selenium. Czysty bezgłowy webpline JavaFX 8 może być możliwy z OpenJFX Project Monocle, ale nie z obecną wersją JavaFX8. Mam nadzieję, że Project Monocle sprawi, że będzie on dostępny w wydaniu 8u26 –

+0

Obsługa XPath w web engine Java FX 8 jest zepsuta. Utrudnia to wdrożenie sterownika sieciowego. https://javafx-jira.kenai.com/browse/RT-30698 –

Odpowiedz

7

Tak, Zbudowałem to: https://github.com/MachinePublishers/jBrowserDriver

Domyślnie działa bezgłowy. Migawki, xpath i wszystko inne działa. Przeglądarka nie jest wymagana, tylko Java 8.

+0

Java FX wydaje się mieć poważny wyciek pamięci z powodu osieroconych uchwytów multimedialnych. Być może pewnego dnia pojawi się sterownik QT5/Qupzilla. –