Przegląd architektury Selenium

Obecnie Selenium jest jednym z najpopularniejszych narzędzi do automatyzacji na rynku. Jest to bardzo potężne narzędzie i jest szeroko stosowane. Jednym z powodów jego popularności jest to, że jest bezpłatny, tj. Jest to pakiet testowy typu open source. Jego popularność wynika nie tylko z tego, ale z wielu innych powodów. Jest to narzędzie do automatyzacji aplikacji internetowych i obsługuje wszystkie różne przeglądarki, takie jak Internet Explorer, Chrome, Safari, Mozilla Firefox, Opera itp. Rozszerza obsługę różnych platform wraz z różnymi językami programowania, takimi jak C #, Java, Perl, PHP, Python, Ruby. Selen jest nieco podobny do narzędzia UFT (HP Quick Test Pro lub QTP). Główną różnicą jest to, że Selenium zajmuje się automatyzacją wyłącznie aplikacji internetowych. Jeśli używasz Selenium do testowania, to nazywa się to Testowaniem Selenu.

Pamiętaj, że Selenium to pakiet Web UI (interfejs użytkownika) o otwartym kodzie źródłowym do testowania automatyzacji. Ma wiele oprogramowania, które niezależnie spełnia wymagania testera automatyzacji w organizacji. Narzędzie to zostało opracowane podczas prac myślowych przez Jasona Hugginsa w 2004 roku jako narzędzie wewnętrzne. Selenium obsługuje kilka różnych platform, takich jak Windows, Linux, Solaris i Macintosh. Obsługuje także system operacyjny (OS) dla aplikacji mobilnych, takich jak Windows Mobile i Android Mobile, iOS. Wszystkie testy funkcjonalne można łatwo zautomatyzować i przeprowadzić za pomocą Selenium. Aby osiągnąć ciągłe testowanie, można go również zintegrować z innymi narzędziami testującymi automatyzację, takimi jak Maven, Docker, Jenkins itp. Ponieważ selen nie jest w stanie samodzielnie generować raportów z testów, należy go zintegrować z narzędziami takimi jak JUnit lub TestNG w zarządzać przypadkami testowymi i generować raporty, które są dobrze opisowe i konfigurowalne zgodnie z naszymi wymaganiami.

Architektura selenu

Cztery główne architektury Selenium wymieniono poniżej -

  1. Selen IDE
  2. Selenium RC
  3. Selenium Webdriver
  4. Siatka selenowa

1) Selenium IDE lub zintegrowane środowisko programistyczne można wdrożyć jako rozszerzenie przeglądarki Firefox. Do pisania skryptów testowych w IDE nie jest wymagana logika programowania, ponieważ pozwala ona po prostu rejestrować zdarzenia występujące w wyniku interakcji z przeglądarką wraz z funkcjami odtwarzania, edycji i testowania debugowania. Całe nagrywanie i odtwarzanie może przebiegać w rzeczywistym środowisku. Wygenerowane skrypty można później edytować ręcznie. Uważa się, że zapewnia idealne środowisko do tworzenia skryptów testowych Selenium, niezależnie od preferowanego sposobu testowania. To prawda, że ​​nie potrzebujesz żadnej znajomości języka programowania, aby korzystać z Selenium IDE, ale wcześniejsza podstawowa znajomość JavaScript będzie przydatna podczas korzystania z poleceń Selenese, takich jak runScript itp. Jednym z ograniczeń Selenium IDE jest to, że jest to wtyczka Firefox, która obsługuje tylko jedna przeglądarka, tj. Mozilla Firefox.

2) Selenium Remote Control to narzędzie do testowania automatyzacji, które pozwala tworzyć skrypty testowe dla aplikacji internetowej w dowolnym języku programowania za pomocą dowolnej przeglądarki z włączoną obsługą JavaScript. Zasadniczo Selenium RC składa się z dwóch głównych komponentów - serwera i biblioteki klienta.

Rolą serwera jest tutaj uruchamianie i zabijanie przeglądarki, odbieranie i weryfikacja żądań HTTP wysyłanych między przeglądarką a testowaną aplikacją, interpretowanie i wykonywanie poleceń Selenese przekazanych przez program testowy, a także działanie jako proxy HTTP. Biblioteki klienta działają jednak jako interfejs między serwerem Selenium RC a różnymi używanymi językami programowania.

Metodologia architektury RC klient-serwer, z Selenium RC między pakietem Automation Suite a AUT (testowana aplikacja), spowalnia wykonywanie skryptów. Zadaniem tego zajmuje się Selenium Webdriver, który komunikuje się bezpośrednio z AUT i korzysta z naturalnej kompatybilności przeglądarki z automatyzacją bez wymagania jakiegokolwiek serwera.

3) Selenium WebDriver jest najpopularniejszym i najważniejszym składnikiem Selenium. Jest to jedno z najpopularniejszych narzędzi automatyzacji, na którym obecnie opiera się kilku inżynierów automatyki. Narzędzie jest „narzędziem Open Source”, tzn. Jest dostępne za darmo.

WebDriver jest ulepszoną wersją Selenium RC, rozszerzającą jego obsługę na różne przeglądarki i platformy, w przeciwieństwie do Selenium IDE. Wykonywanie skryptów testowych nie wymaga uruchamiania żadnego serwera Selenium, w przeciwieństwie do Selenium RC. Selenium Webdriver to w zasadzie internetowy interfejs API do automatyzacji testów, który jest łatwy do zrozumienia i użycia. Obsługuje również testowanie dynamicznych stron internetowych. Selenium Webdriver pomaga w tworzeniu i utrzymywaniu skryptów testowych w bardzo prosty sposób, ponieważ nie jest powiązany z żadną platformą testową ani narzędziem. Ułatwia to integrację z dowolnymi narzędziami typu open source, takimi jak Junit, TestNG itp., Zgodnie z naszą wiedzą, wymaganiami i wykorzystaniem.

4) Selenium Grid jest jednym ze składników pakietu Selenium Suite, który obsługuje wykonywanie wielu skryptów testowych w różnych przeglądarkach, systemie operacyjnym lub maszynach. Po określeniu wybranego systemu operacyjnego wraz z przeglądarką i wersją przeglądarki siatkę selenium można łatwo połączyć z pilotem Selenium Remote. Wartości te można określić tylko w zależności od wykorzystywanych możliwości Selenium Remote.

Hub i węzły to dwa główne elementy. Aby móc korzystać z narzędzia Selenium Grid, pierwszym krokiem do wykonania jest utworzenie koncentratora. Po utworzeniu koncentratora do tego koncentratora można podłączyć kilka różnych węzłów. Skrypty testowe są wykonywane w węźle. Funkcją koncentratora jest jednak upewnienie się, że test zakończy się poprawnie na dostarczonych specyfikacjach, takich jak szczegóły maszyny, systemu operacyjnego i przeglądarki określonej w teście.

Wniosek

Podsumowując, Selenium to w zasadzie zestaw narzędzi, a mianowicie IDE, rozszerzenie Firefoksa, które umożliwia funkcje nagrywania i odtwarzania. Funkcja nagrywania / odtwarzania jest ograniczona i dostępna tylko dla Firefoksa, więc drugim narzędziem jest RC z Webdriver (trzecie narzędzie) jako rozszerzeniem, które zapewnia interfejsy API w różnych językach i kompatybilność z przeglądarką. Nareszcie Grid odpowiada za umożliwienie równoległego wykonywania skryptów w różnych przeglądarkach i maszynach.

Polecane artykuły

To był przewodnik po architekturze Selenium. Tutaj omawiamy wprowadzenie i top 4 architekturę selenu. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Kariera w Selenium
  2. Cykl życia defektu w testowaniu oprogramowania
  3. Jak zainstalować Selenium
  4. Pytania do wywiadu Selenium