Automatyzacja testów aplikacji internetowych odbywa się zazwyczaj z wykorzystaniem biblioteki Selenium WebDriver
, a do ich przygotowania i uruchomienia wykorzystywane są różne przeglądarki internetowe. W tym artykule przedstawię przygotowanie środowiska do testów w oparciu o Selenium WebDriver
oraz przeglądarki Chrome
i Firefox
.
Selenium
to zbiór narzędzi i bibliotek wspierających automatyzację przeglądarek internetowych. Dostarcza podstawy do implementacji specyfikacji W3C WebDriver. Automatyzacja przeglądarek jest możliwa dzięki WebDriver API
, który jest protokołem definiującym niezależny od technologii interfejs do ich kontrolowania. Każdy z tego typu programów jest wspierany przez odpowiednią implementację WebDriver API
, nazywaną sterownikiem
(driver
), która do komunikacji z przeglądarką używa API
dostarczonego przez jej producenta. Przykładami takich sterowników są geckodriver
dla Mozilla Firefox
oraz chromedriver
dla Google Chrome
.
Przeglądarki internetowe
Przeglądarka internetowa jest niezbędna podczas tworzenia testów z użyciem Selenium WebDriver
. Przy automatyzacji testów aplikacji internetowych możesz używać kilku różnych przeglądarek. Ja zwykle pracuję z Chrome
oraz Firefox
. Przed rozpoczęciem pracy upewnij się, że zainstalowałeś najnowsze wersje obu programów.
Tip: W środowisku testowym zalecam wyłączenie automatycznych aktualizacji przeglądarki
Firefox
. Najlepiej jest pozwolić przeglądarce na sprawdzenie aktualizacji, ale bez automatycznej instalacji. Dlaczego? Niektóre aktualizacje nie są zsynchronizowane z aktualizacjami sterownikówSelenium WebDriver
, a brak kompatybilności pomiędzy nową wersją przeglądarki i dotychczasową wersją sterownika może spowodować, że testy przestaną prawidłowo funkcjonować lub nawet nie będą się uruchamiać.
Przenośne przeglądarki internetowe (dostępne dla systemu Windows)
Dla lepszej kontroli nad środowiskiem testowym, która jest kluczowa w automatyzacji, polecam używanie przeglądarek przenośnych (ang. portable). Dzięki temu zyskasz między innymi możliwość instalacji tej samej przeglądarki w różnych wersjach oraz możliwość skutecznego zadbania o kompatybilność używanych wersji przeglądarek i sterowników. Podczas uruchamiania testów z Selenium WebDriver
istnieje możliwość wskazania lokalizacji przeglądarki oraz sterownika do niej.
Najpopularniejsze przeglądarki w wersji portable:
- https://portableapps.com/apps/internet/google_chrome_portable
- https://portableapps.com/apps/internet/firefox_portable
Tip: Przygotowując środowisko do automatyzacji testów, zastanów się nad utworzeniem jednego katalogu (np.
selenium-dev
), w którym zainstalujesz wszystkie niezbędne narzędzia, w tym przenośne przeglądarki i ich sterowniki.
Pobrane przeglądarki zainstaluj w wybranym katalogu (np. selenium-dev/browsers
).
Sterowniki przeglądarek
Automatyczne zarządzanie sterownikami
Jeżeli w swoim projekcie zamierzasz używać automatycznego zarządzania sterownikami, możesz pominąć kroki ręcznej instalacji sterowników.
Więcej informacji znajdziesz w artykułach:
- Selenium Manager - łatwiejszy start z automatyzacją testów Selenium dzięki nowej funkcjonalności
- Automatyczne zarządzanie sterownikami przeglądarek dla projektów w Javie
- Automatyczne zarządzanie sterownikami przeglądarek dla projektów w Pythonie
Zwróć uwagę, że wspomniane narzędzia wspierają ograniczoną liczbę sterowników.
Ręczna instalacja sterowników
Większość sterowników wymaga niezależnej aplikacji do komunikacji z przeglądarką intenetową. Sterowniki możesz pobrać ze stron ich twórców.
- Chrome Driver dla Google Chrome - https://chromedriver.storage.googleapis.com
- Gecko Driver dla Firefox - https://github.com/mozilla/geckodriver/releases
Pobrane sterowniki zapisz w wybranym katalogu (np. selenium-dev/drivers
). Aby Selenium WebDriver
mogło działać poprawnie, będziesz musiał podać mu lokalizację właściwego sterownika przeglądarki.
Tip: Lokalizację sterownika można wskazać przez umieszczenie go w katalogu dostępnym z poziomu zmiennej systemowej
PATH
lub przez parametr uruchomieniaSelenium WebDriver
.
Tip: W większości przypadków sterowniki tworzone są niezależnie od przeglądarek internetowych. Dlatego musisz zwrócić uwagę na informację o wersji przeglądarki, która jest wspierana przez dany sterownik, zamieszczoną na stronie internetowej sterownika.
Jeżeli już pobrałeś i rozpakowałeś wszystkie sterowniki, to upewnij się, że katalog, który je zawiera, jest dostępny z poziomu zmiennej systemowej PATH
.
Jak dodać katalog do PATH
w Windows 10?
- W
Windows 10
uruchom wyszukiwanie (wciśnijWin+S
lubWin
), wpiszEdit environment variables
i uruchom znaleziony program. - W User variables zmień wartość zmiennej
PATH
dodając po średniku;
pełną ścieżkę do katalogu ze sterownikami, np.C:\selenium-dev\drivers
- Uruchom
Cmder
i wykonaj komendęgeckodriver
Jeśli konfiguracja zmiennej PATH
jest poprawna, to geckodriver
pownien się uruchomić, niezależnie od tego, w którym katalogu wpisałeś komendę. Jeśli na ekranie pojawią się komunikaty podobne do tych poniżej, oznacza to, że geckodriver
uruchomił się prawidłowo i nasłuchuje na komendy na porcie 4444
. W analogiczny sposób sprawdź, czy pozostałe sterowniki również uruchamiają się bez przeszkód.
1 | λ geckodriver |