Selenium w C# 50. Selenium Grid

W tej lekcji poznasz Selenium Grid, czyli narzędzie, które pozwala na uruchamianie testów Selenium w trybie rozproszonym.

Uwaga: ta lekcja zawiera instrukcje dotyczące Selenium Server w wersji 3 (która jest do ściągnięcia tutaj). Lekcje dotyczące Selenium 4 (w tym nowego Grida) znajdziesz tutaj.

Selenium Grid: po co?

Do tej pory odpalaliśmy testy lokalnie, czyli na naszych prywatnych komputerach. Być może jednak znajdziecie się kiedyś w sytuacji, w której będziecie chcieli testować na kilku różnych maszynach w różnych konfiguracjach. Właśnie na to pozwala Selenium Grid.

Hub i node’y: czym są?

Hub jest centralną maszyną, która będzie odpowiedzialna za rozdzielanie testów. To znaczy mamy test i mówimy, że chcemy go odpalić na jakiejś maszynie z Chrome w jakiejś określonej wersji i na Windowse. To hub ogarnie czy mamy taką maszynę i jeżeli tak, to przydzieli do niej do zadanie. Ta maszyna, której zostaje przydzielony jakiś test nazywana jest hubem. Hubów możemy mieć wiele, mogą one mieć różne konfiguracje i to na hubach będą wykonywały się testy.

Selenium Server

Żeby móc skonfigurować sobie huba i node’y potrzebujemy ściągnąć Selenium Server. Możemy to zrobić tutaj (wersja 3.141.59). Plik który pobierzemy, to plik .jar. Do uruchomienia takiego pliku będziemy potrzebowali zainstalować sobie Javę. Można tą pobrać stąd. Jak sprawdzić czy mamy Javę albo chociaż JRE pokazuję na filmie.

Jeżeli macie już Javę, np. całe JDK, to wystarczy tylko odpowiednio ustawić zmienną środowiskową o czym także mówię w filmie.

Uruchomienie hub’a i node’a

Huba i node’y odpalamy z linii komend. Po prostu odpalamy pobrany plik .jar z odpowiednimi parametrami.

Poniżej znajdziesz komendy, które pokazałam w tym filmie, które posłużyły nam do odpalenia huba i node’a.

java -jar selenium-server-standalone-3.141.59.jar -role hub
java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://localhost:4444

Dokumentację do Selenium Grid znajdziesz tutaj.

Możliwość komentowania została wyłączona.