Przeglądarka bezgłowa i cyklinowanie - rozwiązania [zamknięte]

368

Próbuję umieścić listę możliwych rozwiązań dla automatycznych zestawów testów przeglądarki i platform przeglądarek bezgłowych, które mogą zgarniać.


TESTOWANIE / ZŁOMOWANIE PRZEGLĄDARKI:

  • Selenium - flagowy program polyglot w automatyzacji przeglądarki, powiązania dla Pythona, Ruby, JavaScript, C #, Haskell i innych, IDE dla Firefoksa (jako rozszerzenie) dla szybszego wdrożenia testowego. Może działać jako serwer i ma mnóstwo funkcji.

JAVASCRIPT

  • PhantomJS - JavaScript , bezgłowe testy z przechwytywaniem ekranu i automatyzacją, wykorzystuje Webkit . Począwszy od wersji 1.8, WebDriver API Selenium jest zaimplementowane, więc możesz używać dowolnego wiązania WebDriver, a testy będą kompatybilne z Selenium
  • SlimerJS - podobnie jak PhantomJS, używa Gecko (Firefox) zamiast WebKit
  • CasperJS - JavaScript , oparty zarówno na PhantomJS, jak i SlimerJS, ma dodatkowe funkcje
  • Ghost Driver - implementacja JavaScript protokołu WebDriver Wire dla PhantomJS .
  • nowy PhantomCSS - testy regresji CSS. A CasperJS moduł automatyzacji badań wizualnych regresji z PhantomJS i Resemble.js .
  • nowy WebdriverCSS - wtyczka do Webdriver.io do automatyzacji testów regresji wizualnej
  • nowy PhantomFlow - Opisz i wizualizuj przepływy użytkowników poprzez testy. Eksperymentalne podejście do testowania interfejsu użytkownika w sieci Web.
  • nowy trifleJS - przenosi interfejs API PhantomJS do korzystania z silnika Internet Explorer.
  • nowy CasperJS IDE (komercyjny)

NODE.JS

  • Node-phantom - wypełnia lukę między PhantomJS i node.js
  • WebDriverJs - powiązania Selenium WebDriver dla node.js przez Selenium Team
  • WD.js - moduł węzła dla WebDriver / Selenium 2
  • yiewd - wrapper WD.js korzystający z najnowszych generatorów Harmony! Pozbądź się piramidy zwrotnej z wydajnością
  • ZombieJs - niezwykle szybkie, bezgłowe testowanie pełnego stosu przy użyciu node.js
  • NightwatchJs - rozwiązanie do testowania oparte na węźle JS przy użyciu Selenium Webdriver
  • Chimera - Chimera: może robić wszystko, co robi phantomJS, ale w pełnym środowisku JS
  • Dalek.js - Zautomatyzowane testowanie w różnych przeglądarkach za pomocą JavaScript za pomocą Selenium Webdriver
  • Webdriver.io - lepsza implementacja powiązań WebDriver z predefiniowanymi działaniami 50+
  • Nightmare - Most elektronowy z API wysokiego poziomu.
  • jsdom - Dostosowany do zgarniania stron internetowych. Bardzo lekki DOM zaimplementowany w Node.js, obsługuje strony z javascript.
  • nowy Puppeteer - biblioteka węzłów, która zapewnia API wysokiego poziomu do sterowania Chrome lub Chromium. Puppeteer domyślnie działa bez głowy.

ZŁOMOWANIE / WYDOBYWANIE INTERNETU

  • Scrapy - Python , głównie skrobak / górnik - szybki, dobrze udokumentowany i, można go połączyć z Django Dynamic Scraper do ładnych wdrożeń wydobywczych lub Scrapy Cloud dla PaaS (bez użycia serwera), działa w terminalu lub jako samodzielny proces serwera , można używać z Selerem , zbudowanym na Twisted
  • Snailer - moduł node.js , jeszcze nie przetestowany.
  • Node-Crawler - moduł node.js , jeszcze nie przetestowany.

NARZĘDZIA ONLINE


POWIĄZANE LINKI I ZASOBY

Pytania:

  • Jakieś czyste rozwiązanie Node.js lub moduł Nodejs do PhanthomJS / CasperJS, które faktycznie działa i jest udokumentowane?

Odpowiedź: Chimera wydaje się iść w tym kierunku, sprawdź Chimera

  • Czy są inne rozwiązania, które mogą łatwiej wstrzykiwać JavaScript niż Selenium?

  • Czy znasz jakieś czyste rozwiązania rubinowe ?

Odpowiedź: Sprawdź listę stworzoną przez rjk z rozwiązaniami opartymi na ruby

  • Czy znasz jakieś powiązane technologie lub rozwiązania?

Edytuj to pytanie i dodaj treść, jak chcesz! Dziękujemy za Twój wkład!

działa
źródło
1
nie wiem, czy tego chcesz, ale podoba mi się ten moduł do przeszukiwania stron internetowych, sprawdzania domeny i tak dalej: npmjs.org/package/crawler . używa jsdom i możesz jQuery jako silnik selekcyjny. ten (który korzysta z robota) wygląda również interesująco: npmjs.org/package/snailer
hereandnow78
Odniosłem duży sukces z modułem phantom. Jest to dość proste i dość dobrze udokumentowane. Obsługuje wstrzykiwanie javascript.
Josh C.,
1
Jestem pewien, że zdajesz sobie sprawę, że GhostDriver to implementacja Selenium-Webdriver, który wykorzystuje phantomJS
Robbie Wareham
2
Może ci się to również przydać
todd
1
Do skrobania wizualnego i porównań: PhantomCSS i PhantomFlow
FelipeAls

Odpowiedzi:

35

Jeśli lubisz Ruby, możesz także spróbować:

klejnot Nokogiri można również wykorzystać do skrobania:

jest dedykowana książka o tym, jak wykorzystać nokogiri do skrobania przez publikowanie paczek

rkj
źródło
watir jest tysiąc razy łatwiejszy niż biblioteki powyżej.
Pavan Katepalli
Biblioteka Pytbona „webbot” oferuje bogate funkcje ułatwiające automatyzację sieci.
Natesh bhat
11

http://triflejs.org/ jest jak phantomjs, ale oparty na IE

Federico Galassi
źródło
Chociaż ten link może odpowiedzieć na pytanie, lepiej dołączyć tutaj istotne części odpowiedzi i podać link w celach informacyjnych. Odpowiedzi zawierające tylko łącze mogą stać się nieprawidłowe, jeśli połączona strona ulegnie zmianie.
Sathish
5
Brzmi normalnie, ale to pytanie jest zbiorem zasobów. Link z krótkim opisem, który ma zostać włączony do listy, pasuje do formatu i ma sens.
Federico Galassi
7

Rodzaj Selenium oparty na JS to Dalek.js . Ma on na celu nie tylko zautomatyzowane testy interfejsu użytkownika, ale umożliwia także wykonywanie zrzutów ekranu. Posiada webdrivery dla wszystkich ważnych przeglądarek. Niestety, ci webdriverzy wydają się być warty ulepszenia (żeby nie powiedzieć „buggy” dla Firefoksa).

Jens Grochtdreis
źródło