Browser Automation (Polski)

Cucumber nie jest narzędziem do automatyzacji przeglądarki, ale działa dobrze z następującymi narzędziami do automatyzacji przeglądarki.

WebDriver został zaprojektowany, aby zapewnić prostszą , bardziej zwięzły interfejs programowania niż niektóre inne narzędzia. Selenium-WebDriver lepiej obsługuje dynamiczne strony internetowe, na których elementy strony mogą się zmieniać bez ponownego ładowania samej strony. Celem WebDriver jest dostarczenie dobrze zaprojektowanego, zorientowanego obiektowo interfejsu API, który zapewnia lepszą obsługę nowoczesnych, zaawansowanych problemów z testowaniem aplikacji internetowych.

Selenium-WebDriver może być używany w wielu językach programowania, w tym w Java, JavaScript, Ruby i Kotlin.

Spójrzmy na przykład Cucumber używającego Selenium-WebDriver w testowaniu UI, konwertując sterownik Selenium-Web na przykład.

Możemy wyrazić przykład jako następujący scenariusz:

Więcej informacji o Selenium Webdriver.

Narzędzia do automatyzacji przeglądarek dla JVM

Serenity BDD jest biblioteka raportowania typu open source, która pomaga pisać lepiej ustrukturyzowane, łatwiejsze w utrzymaniu automatyczne kryteria akceptacji. Serenity generuje również bogate, znaczące raporty z testów (lub „żywą dokumentację”), które zawierają nie tylko wyniki testów, ale także funkcje, które zostały przetestowane.

Szczegółowy samouczek dotyczący korzystania z Cucumber-JVM z Serenity można znaleźć tutaj, a więcej informacji na temat Serenity można znaleźć na ich oficjalnej stronie internetowej.

Serenity BDD to biblioteka raportowania typu open source, która pomaga pisać lepiej ustrukturyzowane, łatwiejsze w utrzymaniu automatyczne kryteria akceptacji. Serenity tworzy również bogate, znaczące raporty z testów (lub „żywą dokumentację ”), Które podają nie tylko wyniki testów, ale także funkcje, które zostały przetestowane.

Szczegółowy samouczek dotyczący korzystania z Cucumber-JVM z Serenity można znaleźć tutaj, a więcej informacji na temat Serenity można znaleźć na ich oficjalnej stronie internetowej .

Serenity działa tylko z językami JVM.Serenity działa tylko z językami JVM.

Narzędzia automatyzacji przeglądarki dla Rubiego

Watir (wymawiane water), to open-source (BSD), rodzina bibliotek Ruby do automatyzacji przeglądarki internetowej s. Pozwala na pisanie testów, które są łatwiejsze do odczytania i utrzymania. Jest prosty i elastyczny.

Watir steruje przeglądarkami tak samo, jak ludzie. Klika linki, wypełnia formularze, naciska przyciski. Watir sprawdza również wyniki, na przykład czy oczekiwany tekst pojawia się na stronie.

Watir to rodzina bibliotek Ruby, ale obsługuje Twoją aplikację bez względu na to, w jakiej technologii została opracowana. Podczas gdy Watir obsługuje tylko przeglądarkę Internet Explorer w Windows; Watir-WebDriver rozwiązuje testy pojedynczej przeglądarki i obsługuje przeglądarki Chrome, Firefox, Internet Explorer, Opera, a także działa w trybie bezgłowym (HTMLUnit).

Przejdźmy teraz do przykładowego programu do testowania interfejsu użytkownika przy użyciu Watir:

Teraz włączmy Cucumber do tego testu:

Więcej informacji o Watir.

Watir działa tylko z Rubim.Watir działa tylko z Ruby.Watir działa tylko z Rubym.

Kapibara

Cucumber-Rails jest wstępnie skonfigurowany z obsługą testowania integracji widoku przy użyciu Capybara (script/generate cucumber --capybara).

O ile nie podano inaczej, generator instalacji Cucumber-Rails ustawi niezbędne pliki pomocnicze dla Kapibary.

Chociaż Kapibara jest preferowaną metodą testowania widoków HTML w Cucumber-Rails, nie robi tego. baw się dobrze z wbudowanym w Railsach MiniTest/Test::Unit. W szczególności za każdym razem, gdy Kapibara jest wprowadzana do Świata Ogórków, wówczas response.body metoda Rails Test::Unit jest usuwana. Kapibara zależy od Nokogiri, a Nokogiri woli używać XML niż tagów CSS. To zachowanie można zmienić w ./features/support/env.rb.

Więcej informacji na temat Kapibary.

Kapibara działa tylko z Rubim.Capybara działa tylko z Rubim.Capybara działa tylko z Rubim.

Zrzut ekranu w przypadku niepowodzenia

Zrzut ekranu w przypadku niepowodzenia scenariusza może pomóc w ustaleniu, co poszło nie tak. Aby zrobić zrzut ekranu w przypadku niepowodzenia, możesz skonfigurować przechodzenie po.

Poniżej znajduje się przykład, jak zrobić zrzut ekranu za pomocą WebDriver dla nieudanych scenariuszy i osadzić je w raporcie Cucumber.

Poniżej znajduje się przykład, jak zrobić zrzut ekranu za pomocą WebDriverfor nieudanych scenariuszy i osadzić je w raporcie Cucumber.

Poniżej znajduje się przykład, jak zrobić zrzut ekranu za pomocą WebDriver dla nieudanych scenariuszy i osadzić je w raporcie Cucumber.

Poniżej znajduje się przykład, jak zrobić zrzut ekranu z Capybaraf lub nieudane scenariusze i osadzić je w raporcie Cucumber.

Wiele przeglądarek

Cucumber może uruchamiać scenariusze z różnymi przeglądarkami, w oparciu o właściwość konfiguracji ładowaną w czasie wykonywania:

Następnie zdefiniuj właściwość browser podczas uruchamiania Cucumber:

Jeśli używasz Serenity, przekaż właściwość systemową driver (nie jest wymagane dodatkowe kodowanie):

Jeśli używasz Serenity, przekaż właściwość systemową driver (bez dodatkowego kodowania):

Leave a Reply

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *