devnews.pl

Main Menu

  • Informacje
    • Systemy i przeglądarki
    • Gadżety
  • Narzędzia
  • Frontend
  • Backend
  • QA
  • Języki programowania

logo

devnews.pl

  • Informacje
    • Systemy i przeglądarki
    • Gadżety
  • Narzędzia
  • Frontend
  • Backend
  • QA
  • Języki programowania
QA
Home›QA›Edge dodane do Selenium i automatyzacja testowania aplikacji przy pomocy WebDriver

Edge dodane do Selenium i automatyzacja testowania aplikacji przy pomocy WebDriver

By Bernadeta Zapała
27 kwietnia 2020
163
0
Share:

Coraz więcej znanych aplikacji, usług internetowych — od JavaScript obsługiwanego przez Electron aż do nowych generacji niezależnych aplikacji internetowych — powstaje w oparciu o technologie sieciowe. Rozwój podstawowych technologii HTML 5 (m.in. JavaScript, CSS, transponowane języki — TypeScript) pozwala na otwartość, technologie te dojrzewają i dostarczają znacznie więcej niż na początku Internetu.

Jeden obszar nowoczesnej sieci pozostaje jednak odrobinę z tyłu — mowa o testowaniu. Podczas, gdy można budować kod w znanych IDE, pisać go lepiej, przejrzyściej, możemy go debugować za pomocą narzędzi opartych na przeglądarce, to w dziale testów spotykamy niewiele ulepszeń.

WebDriver i Selenium

Już od kilku dziesięcioleci istnieją zautomatyzowane narzędzia do testowania stron internetowych. Najwcześniejsze z nich były w stanie symulować interakcje użytkowników na dużą skalę. Pokazywało to jak witryny działają pod obciążeniem, nie tylko czy strony i aplikacje działają zgodnie z oczekiwaniami. Obecnie testowanie aplikacji internetowych polega na wypróbowanych już i przetestowanych technikach. Jednak zamiast symulacji przeglądarki i użytkowników bazują na oryginalnej specyfikacji WebDriver projektu Selenium. Pozwala to na testowanie interakcji strony z przeglądarkami produkcyjnymi, tj. Chrome, Edge HTML, nowy Edge oparty na chromie czy Firefox.

Selenium logo

Interfejs API WebDriver idzie w dobrą stronę, ma duże szanse, aby stać się standardem konsorcjum World Wide Web. WebDriver umożliwia pisanie kodu do bezpośredniego sterowania przeglądarką. Skrypty testowe symulują interakcje użytkownika. Przez testowanie z WebDriver zamiast testów JavaScript można uzyskać większy zasięg działań przeglądarki, pracę między oknami i kartami. Symulacje dotyczą zdarzeń zarówno od użytkowników, jak i podstawowego systemu operacyjnego.

Testowanie w Edge za pomocą WebDriver

Każda wersja Edge potrzebuje innego sterownika, co pozwala na jej testy wraz z wersjami Neta, Canary czy Dev. Testowanie między wersjami pozwala zlokalizować błędy specyficzne dla niej, umożliwia dostrojenie stron i aplikacji pod kątem nowych funkcji przeglądarki, bez wpływu na normalne działanie. Zarówno dla starszej wersji EdgeHTML, jak i nowej wersji Chromium, Microsoft udostępnił bibliotekę implementacji WebDriver. Oprócz instalacji WebDriver odpowiedniego dla wersji Edge, należy zainstalować jeszcze powiązanie językowe ze strony Selenium. Znajdziemy tam różne języki, od skryptowych typu Ruby po korporacyjną Javę.

Korzystanie z WebDriver z C #

Budowa i uruchamianie własnych skryptów testowych bez konieczności stawania instancji serwera Selenium jest możliwa dzięki powiązaniom .NET dla wywołań API zapewnionym przez C# WebDriver. Zaleca się tworzenie testów opartych na C# jako część tego samego projektu co aplikacja internetowa. Spowoduje to rozwój programu ASP.NET Core równolegle z testami WebDriver. Testy te z kolei można używać zarówno do testów jednostkowych jak i akceptacyjnych.

Nauka interfejsu API WebDriver jest dość trudna, posiada on wiele funkcji, jest złożony. Jedną z prostszych rzeczy może być użycie wtyczki przeglądarki Selenium IDE do wygenerowania podstawowych skryptów na potrzeby testów. Następnie należy je wykorzystać jako podstawę własnego kodu.

Korzystanie z WebDriver z narzędziami testowymi Visual Studio

Znaczna część kodu testowego zależy od dobrze zbudowanego HTML i CSS, np. przy pomocy etykiet elementów do nawigacji do formularzy. Automatyzacja testowania witryn i treści będzie ułatwiona, jeśli strony będą dobrze zaprojektowane, poprze m.in. oznakowanie elementów ASP.NET. Z WebDriver można wchodzić w interakcje, wysyłać treści do pól, nie służy tylko jako narzędzie od nawigacji po treści. Skrypty interakcji mogą być także pakowane jako przypadki testowe z warunkami negatywnymi i pozytywnymi. Spakowane skrypty są gotowe do użycia z narzędziami takimi jak NUnit. Dzięki niemu testy są częścią kompilacji Visual Studio.

Przede wszystkim sukcesem dobrej aplikacji i strony internetowej jest nie tylko prawidłowo działający program czy dobry kod. Testowanie jest kluczowym elementem procesu programowania. Dzięki automatyzacji interakcji Edge z Selenium i WebDriver można pracować w ramach testów wykorzystujących rzeczywiste funkcje przeglądarki. Umożliwia to pisanie testów w tym samym czasie co pisanie kodu.

Źródła:

  • https://www.infoworld.com/article/3539228/using-c-to-automate-web-application-testing-in-edge-with-webdriver.html
  • https://www.selenium.dev/documentation/en/webdriver/
TagsQASeleniumSelenium webdriverTesty automatyczne

Share:

  • Narzędzia

    Babel 7.12.0 z TypeScript 4.1 i propozycjami ECMAScript

  • Systemy i przeglądarki

    Android 11 dostępny dla telefonów Pixel

  • Systemy i przeglądarki

    Firefox 78: ulepszenia DevTools oraz w menu kontekstowym

  • 3 marca 2021

    Vite 2.0 wydane z nowymi wtyczkami

  • 25 lutego 2021

    ReacType 5.0 – zmiany we wprowadzaniu komponentów

  • 23 lutego 2021

    Dapr v.1.0 gotowy do fazy produkcji

  • 22 lutego 2021

    ReScript 9.0 z zewnętrzną konfiguracją stdlib

  • 22 lutego 2021

    One UI 3.1 z ciekawymi nowościami dla urządzeń Samsunga

  • 22 lutego 2021

    Windows Terminal Preview 1.6 z nową sekcją ustawień

  • 15 lutego 2021

    Visual Studio Code 1.53 z ulepszeniami debugowania

  • 8 lutego 2021

    Edge 89 beta, Edge Dev 90 i nowości na kanale Canary

  • 2 lutego 2021

    Firefox 85 i Firefox Nightly – nowe wersje przeglądarki Mozilli

  • 29 stycznia 2021

    Billboard.js 2.2.0 z nowymi funkcjami wykresów

  • 26 stycznia 2021

    Kendo UI R1 2021 – nowości dla bibliotek

  • 21 stycznia 2021

    Narzędzie Vno – połączenie Vue i Deno

  • 19 stycznia 2021

    GitHub Enterprise Server 3.0 RC – kandydat do wydania

  • 15 stycznia 2021

    TypeScript 4.2 Beta z ulepszeniami typów krotek

  • 13 stycznia 2021

    Styczniowy Patch Tuesday z luką 0-day

  • 11 stycznia 2021

    Safari Technology Preview 118 dostępne dla programistów

  • 8 stycznia 2021

    Microsoft Launcher na Androida z usprawnionym dotykiem

  • 7 stycznia 2021

    WebStorm 2020.3.1 dostępny dla urządzeń z Apple Silicon

  • 22 grudnia 2020

    ReScript 8.4 z przypiętymi zależnościami

  • 14 grudnia 2020

    Edge 88 beta i przeglądarka na kanale Canary dostępne!

  • 9 grudnia 2020

    Chrome 88 Beta z nowościami w WebXR

  • 9 grudnia 2020

    Snowpack 3.0 RC z eksperymentalnymi funkcjami

  • 4 grudnia 2020

    Android Studio Arctic Fox – nowe wydanie narzędzia Google

  • 4 grudnia 2020

    The Hack Summit 2020 – konferencja IT Security

  • 2 grudnia 2020

    PowerToys 0.27 z poprawkami błędów

  • 2 grudnia 2020

    Aleph.js alfa z funkcją importowania map

  • 27 listopada 2020

    Cypress 6.0 zwiększa zakres możliwości obsługi sieci

  • 26 listopada 2020

    Firefox 83 przyspiesza i wprowadza tryb HTTPS-Only

  • 25 listopada 2020

    Electron 11.0 z obsługą Apple Silicon

  • 25 listopada 2020

    Prettier 2.2 z obsługą najnowszego TypeScript 4.1

 

 

Jesteśmy pasjonatami najnowszych technologii w świecie programowania. Zbieramy dla Was informacje i porady z całego świata, które sprawią, że Twoja praca stanie się jeszcze bardziej efektywna.

Obserwuj nas codziennie, aby być na bieżąco oraz śmiało udostępniaj nasze posty.

Zespół DevNews

Kategorie

  • Backend
  • Bez kategorii
  • Frontend
  • Gadżety
  • Informacje
  • Języki programowania
  • Narzędzia
  • QA
  • Systemy i przeglądarki

OBSERWUJ NAS

KONTAKT

Chcesz się z nami skontaktować?

Napisz do nas wiadomość: kontakt@devnews.pl

www.devnews.pl | DEVNEWS 2020 | Newsy i ciekawostki ze świata IT