integration jenkins with selenium webdriver
Przewodnik krok po kroku dotyczący instalacji i konfiguracji Jenkins z Selenium:
Nasz poprzedni samouczek z serii DevOps wyjaśnił Ansible Roles i integracja z Jenkins w DevOps .
Jenkins to narzędzie typu open source napisane w języku Java. To zapewnia ciągła dostawa i usługa ciągłej integracji do tworzenia oprogramowania. Automatyzuje ręczne zadanie procesu wdrażania kodu z poziomu programowania - QA - Etap - Produkcja.
Sugerowany odczyt => Seria samouczków dotyczących precyzyjnych szkoleń DevOps
Jenkins obsługuje wiele wtyczek, które można zintegrować, takich jak Git, SVN, build pipeline i wiele innych.
Podstawową funkcjonalnością Jenkinsa jest wykonanie predefiniowanej listy kroków na podstawie czasu i niektórych zdarzeń.
Na przykład, jeśli chcesz oprzeć wykonanie na czasie, możesz uruchamiać zadanie co 20 minut lub jeśli chcesz oprzeć je na zdarzeniu, możesz to zrobić po nowym zatwierdzeniu w repozytorium Git.
W tym artykule omówiliśmy poniższe punkty:
- Stosowanie i integracja Jenkinsa z selenem
- Tworzenie pliku wsadowego i używanie go Jenkins
- Planowanie pracy Jenkins i dodano powiadomienia e-mail
- I uruchamianie skryptu selenu z wiersza poleceń
Zalety korzystania z Jenkins to:
- Jest to platforma wieloplatformowa i może być używana w środowiskach Windows, Linux, Mac OS i Solaris
- Jest to darmowe narzędzie o otwartym kodzie źródłowym
- Powszechnie używane i dobrze udokumentowane
- Integracja z szeroką gamą narzędzi i technologii
Oprócz Jenkinsa na rynku mamy wiele innych narzędzi, takich jak:
- Mrowisko
- Bambus
- Tempomat
- Team City i wiele innych.
Czego się nauczysz:
- Stosowanie i integracja Jenkinsa z selenem
- Tworzenie pliku wsadowego i używanie go w Jenkins
- Planowanie pracy Jenkinsa
- Jak dodawać powiadomienia e-mail
- Uruchamianie skryptu Selenium za pomocą wiersza poleceń
- Wniosek
- rekomendowane lektury
Stosowanie i integracja Jenkinsa z selenem
Postępuj zgodnie z poniższą procedurą krok po kroku, aby użyć Jenkins z Selenium
Krok 1:
Pobierz Jenkins z oficjalnej strony Jenkins - Jenkins . Pobierz najnowszy plik .war. Jenkins można uruchomić z wiersza poleceń lub uruchomić na serwerze aplikacji internetowych.
Zapoznaj się z poniższymi krokami dotyczącymi wykonania za pomocą wiersza poleceń:
1) Otwórz wiersz polecenia i wpisz java –jar i wprowadź ścieżkę do pliku .war
(Uwaga:Kliknij dowolny obraz, aby wyświetlić powiększenie)
dwa) Naciśnij klawisz Enter i sprawdź, czy plik Jenkins.war zaczął się uruchamiać, i sprawdź informacje o stanie w konsoli wiersza poleceń.
Powinien pokazywać - Jenkins jest w pełni gotowy do pracy
3) Teraz sprawdź, czy Twój Jenkins jest gotowy do użycia; domyślnie używa portu 8080.
Rodzaj ' http: // localhost: 8080 ”W przeglądarce i naciśnij enter. Pokaże Ci interfejs użytkownika Jenkinsa.
Domyślnie pulpit nawigacyjny Jenkins jest ładowany jako pusty. Utworzyłem pracę Jenkinsa na powyższym zrzucie ekranu jako przykład i dlatego nie została załadowana pusta.
Krok 2:
Aby używać Selenium z Jenkinsem, musisz skonfigurować Jenkins z Selenium.
Wykonaj poniższe kroki:
- Przejdź do pulpitu Jenkins
- Kliknij Zarządzaj Jenkinsem
- Kliknij Konfiguruj Jenkins
- Kliknij na instalację JDK - W sekcji JDK name wpisz nazwę, w sekcji Java Home - podaj ścieżkę do java
Przycisk opcji, Zainstaluj automatycznie jest zaznaczone domyślnie. Musisz ją odznaczyć, ponieważ automatycznie zaktualizuje się do nowej wersji Java i może istnieć możliwość, że Selenium nie obsługuje nowej wersji Java. Lepiej to odznaczyć. Teraz kliknij Zastosuj i zapisz.
Twój Jenkins jest skonfigurowany z Selenium i jest teraz gotowy do użycia z Selenium. Kod Jenkins i Selenium jest napisany w Javie. W związku z tym, jeśli podasz ścieżkę Java, wówczas wewnętrznie komunikuje się ona i przetwarza Twoje zadanie.
Krok 3:
Teraz utwórz skrypt Selenium i plik XML TestNG. Ten plik XML TestNG będzie wymagany do utworzenia pliku wsadowego i użyjemy tego pliku wsadowego w Jenkins. Zobacz poniżej kod TestNG:
Zobacz poniżej kod TestNG:
package session_2; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; public class jenkins_demo { @Test publicvoidtestgooglrsearch(){ WebDriver driver = newFirefoxDriver(); //it will open the goggle page driver.get('http://google.in'); //we expect the title “Google “ should be present String Expectedtitle = 'Google'; //it will fetch the actual title String Actualtitle = driver.getTitle(); System.out.println('Before Assetion ' + Expectedtitle + Actualtitle); //it will compare actual title and expected title Assert.assertEquals(Actualtitle, Expectedtitle); //print out the result System.out.println('After Assertion ' + Expectedtitle + Actualtitle + ' Title matched '); } }
Wynik : Przed potwierdzeniem GoogleGoogle
Po potwierdzeniu pasował tytuł GoogleGoogle
PASSED: testgooglrsearch
Utwórz plik XML TestNG, zapoznaj się z poniższym kodem:
Krok 4:
Przejdź do katalogu głównego projektu i utwórz folder biblioteki.
Zobacz zrzut ekranu poniżej:
Teraz dodaj wszystkie pliki jar, które są wymagane do uruchomienia skryptu Selenium:
konwerter youtube na mp4 na Androida
Krok 5:
Tworzenie pliku wsadowego i używanie go w Jenkins
Utwórz plik wsadowy, wykonując poniższe czynności:
1) Otwórz notatnik i wpisz-: Java –cp bin; lib / * org.testng.TestNG testng.xml
Robiąc to, Java –cp skompiluje i uruchomi plik .class, który znajduje się pod adresem jestem katalog i cały nasz wykonywalny plik jar znajduje się pod adresem lib katalogu i używamy frameworka TestNG, więc określ org.testng.TestNG. Określ również nazwa xml plik, który uruchomi oczekiwany skrypt TestNG.
dwa) Zapisz plik z rozszerzeniem .bat i sprawdź typ pliku. Powinien to być „plik wsadowy systemu Windows”. Aby sprawdzić, czy plik wsadowy został utworzony poprawnie, kliknij dwukrotnie plik wsadowy, a kod zostanie wykonany. Zobacz poniższy kod pliku wsadowego:
Krok 6:
Następnie musimy dodać plik wsadowy w Jenkins.
Aby dodać plik wsadowy, wykonaj poniższe czynności:
1) Przejdź do pulpitu nawigacyjnego Jenkins, utwórz nowe zadanie w Jenkins
dwa) Kliknij nową pozycję i wprowadź nazwę przedmiotu, a następnie zaznacz przycisk opcji projektu freestyle
3) Kliknij Opcje zaawansowane
4) Kliknij użyj niestandardowego obszaru roboczego i podaj ścieżkę obszaru roboczego projektu skryptu Selenium: „ E: Obszar roboczy_automatyzacji Demo-testNG '
5) Następnie przejdź do Buduj i wybierz opcję z rozwijanego menu, wykonaj kompilację za pomocą polecenia wsadowego systemu Windows
6) I podaj tutaj nazwę pliku wsadowego - „ run.bat '
7) Kliknij zastosuj i zapisz
8) Kliknij kompilację teraz i zobacz wynik kompilacji w danych wyjściowych konsoli
Do tej pory dowiedzieliśmy się:
- Jak rozpocząć Jenkins
- Jak skonfigurować Jenkins z Selenium
- Tworzenie pliku wsadowego i wykonywanie go przez Jenkins.
Jak wszyscy wiecie, Jenkins to bardzo potężne narzędzie, które jest używane głównie do uruchamiania nocnych kompilacji. Dlatego teraz nauczymy się, jak zaplanować kompilację i wysyłać powiadomienia e-mail do odpowiedniego zespołu.
Planowanie pracy Jenkinsa
Aby zaplanować plik wsadowy, wykonaj poniższe czynności:
- Przejdź do pulpitu nawigacyjnego i kliknij zadanie Jenkins
- Kliknij Konfiguruj, a następnie opcję zaawansowaną
- Następnie idź do Twórz wyzwalacze i wybierz Buduj okresowo i wprowadź wzorzec zadania cron
- Aby zrozumieć wzorzec pracy crona, postępuj zgodnie z tym link wiki
Wpisałem * * * * *, co oznacza, że moja praca będzie wykonywana co minutę
- Kliknij zastosuj i zapisz
Nie ma ręcznej interwencji. Po zaplanowaniu skryptu zostanie uruchomiony w zaplanowanym czasie.
Jak dodawać powiadomienia e-mail
Następnie omówimy, jak dodawać powiadomienia e-mail.
Sprawdź poniższe kroki:
- Przejdź do sekcji „Zarządzaj Jenkins”
- Kliknij Konfiguruj system
- Wybierz Powiadomienie e-mail
- Podaj adres serwera SMTP. Używam Gmaila, ponieważ nie mogę podać mojego oficjalnego adresu serwera. Aby poznać oficjalny adres serwera, skontaktuj się z zespołem obsługi sieci
- Wpisałem nazwę serwera SMTP = smtp.gmail.com
- Kliknij łącze zaawansowane i zaznacz pole wyboru Użyj uwierzytelniania SMTP
- Podaj nazwę użytkownika, hasło i numer portu SMTP; dla Gmaila jest to 465. Sprawdź zestaw znaków i upewnij się, że jest to = UTF-8
- Sprawdź ustawienia konfiguracji poczty e-mail, klikając przycisk Testuj konfigurację.
- Tak więc za każdym razem, gdy kompilacja zakończy się pomyślnie lub zakończy się niepowodzeniem, otrzymasz powiadomienie e-mail.
Uruchamianie skryptu Selenium za pomocą wiersza poleceń
Teraz zobaczymy jak możemy uruchomić skrypt Selenium za pomocą wiersza poleceń . Ta część nie ma nic wspólnego z Jenkinsem. Dzielę się tym, aby dać dodatkowy wgląd w Selenium.
Wykonaj poniższe kroki:
- Otwórz wiersz polecenia i przejdź do ścieżki podstawowej projektu
- Ustaw ścieżkę klasy do pliku skryptu; co oznacza, że określamy, że nasze pliki binarne i biblioteczne są przechowywane w tej lokalizacji
E: Automation_workspace Demo-testNG> set classpath = E: Automation_workspace Demo-testNG bin; E: Automation_workspace Demo-testNG lib *;
- Uruchom plik testng.xml, wpisując polecenie - java org.testng.TestNG testng.xml
- Po naciśnięciu klawisza enter skrypt rozpocznie wykonywanie, a wynik testu będzie widoczny w interfejsie użytkownika
Czasami podczas wykonywania skryptu możesz napotkać błąd o treści „Nie można znaleźć ani załadować głównej klasy org.testng.TestNG”
Następnie musisz zamknąć wiersz polecenia i ponownie ustawić ścieżkę klasy, jak wspomniano powyżej, i powtórzyć te same kroki. Twój błąd zostanie rozwiązany i skrypt zostanie uruchomiony.
Wniosek
Integracja Jenkins z selenem zapewnia uruchamianie skryptu za każdym razem, gdy następuje zmiana w kodzie oprogramowania i wdrażanie kodu w nowym środowisku. Dzięki Jenkins możesz zapisywać historię wykonywania i raporty z testów.
Krótko mówiąc, Jenkins jest bardzo przydatny, gdy masz gotowe przypadki testowe i chcesz, aby były uruchamiane jednym kliknięciem. Możemy utworzyć lub zaplanować kompilację, aby uruchomić przypadki testowe przy użyciu pliku wsadowego.
Dalsza lektura => Zintegruj Selenium z projektem Maven
Uwaga: Ten samouczek jest częścią serii samouczków Selenium oraz DevOps. Kliknij poniższe łącze, aby przejść do poprzednich i następnych samouczków z serii DevOps.
POPRZEDNIA samouczek | NEXT Tutorial
Zachęcamy do wysyłania zapytań w sekcji komentarzy poniżej .
rekomendowane lektury
- Cucumber Selenium Tutorial: Integracja Cucumber Java Selenium WebDriver
- Wprowadzenie do Selenium WebDriver - samouczek Selenium # 8
- Integracja Selenium z JMeter
- Wdrożenie w MongoDB: samouczek krok po kroku
- Dogłębne samouczki dotyczące Eclipse dla początkujących
- Wdrożenie naszego pierwszego skryptu WebDriver - Selenium WebDriver Tutorial # 10
- Specflow i Selenium Webdriver Przykład od końca do końca
- Jak używać Firebuga do tworzenia skryptów selenium - samouczek Selenium # 4