tytuł oryginału: selenium essentialspause/resume wstrzymuje na chwilÚ wykonywanie i pozwala je...

34

Upload: others

Post on 13-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach
Page 2: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Tytuł oryginału: Selenium Essentials

Tłumaczenie: Jakub Hubisz

ISBN: 978-83-283-3039-9

Copyright © Packt Publishing 2015

First published in the English language under the title ‘Selenium Essentials’ - 9781784394332.

Polish edition copyright © 2017 by Helion SA. All rights reserved.

All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher.

Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji.

Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.

Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.

Wydawnictwo HELIONul. Kościuszki 1c, 44-100 GLIWICEtel. 32 231 22 19, 32 230 98 63e-mail: [email protected]: http://helion.pl (księgarnia internetowa, katalog książek)

Drogi Czytelniku!Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie/selataMożesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.

Printed in Poland.

• Kup książkę• Poleć książkę • Oceń książkę

• Księgarnia internetowa• Lubię to! » Nasza społeczność

Page 3: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Spis tre ci

O autorze 7

O korektorze merytorycznym 8

Przedmowa 9

Rozdzia 1. Selenium IDE 13

Odtwarzanie WebDriver 17Priorytety lokatorów 19Unikanie eksportu Selenium 20

Schowek Selenium IDE 22Testy sterowane danymi 23

Metody JavaScript zdefiniowane przez u ytkownika 23Funkcje JavaScript w Selenium IDE 26

Proste wywo anie JavaScript 27Przewijanie kó kiem myszy 28Parametryzacja przy wykorzystaniu tablic 28

Selenium Builder 29Nagrywanie i odtwarzanie 30Testy sterowane danymi 31Selenium Builder w chmurze 33

Podsumowanie 34

Rozdzia 2. Testy na wielu przegl darkach z wykorzystaniem Selenium WebDriver 35

Testy kompatybilno ci z wykorzystaniem Selenium WebDriver 36TestNG 37

Testy Selenium w chmurze dla wielu przegl darek 40SauceLabs 40BrowserStack 42TestingBot 43

Poleć książkęKup książkę

Page 4: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

4

Testy w przegl darce bezinterfejsowej 45PhantomJS 45HTMLUnitDriver 47

Zmienianie interfejsów u ytkownika 48Przegl darka Firefox 49Przegl darka Chrome 49

Testy na konkretnych wersjach przegl darki Firefox 50Testy z niestandardowego profilu Firefox 51

Testy z niestandardowego profilu Chrome 52Podsumowanie 52

Rozdzia 3. Funkcje Selenium WebDriver 53

Podstawowe funkcje WebDriver 54Lokalizowanie elementów 55Funkcje elementów WebElements 60Nawigacja 63Ciasteczka 64Funkcje okna 66Funkcje wybieraj ce 70Obs uga alertów i okien wyskakuj cych 72Akcje myszy i klawiatury 74Podsumowanie 80

Rozdzia 4. Selenium WebDriver — najlepsze praktyki 81

Obs uga stron wykorzystuj cych Ajax 82Metoda isElementPresent 82

Oczekiwanie 83Oczekiwanie jawne 84Limity czasu 87

Wzorzec Page Object 88Klasa PageFactory 90Adnotacja @FindBy 92Adnotacja @FindBys 93

Klasa EventFiringWebDriver 93Przyk ad sterownika uruchamiaj cego zdarzenia 99

Obs uga ramek iframe 103Obs uga okien wyskakuj cych systemu operacyjnego i przegl darki

przy wykorzystaniu Java Robot 105Profil Firefox do pobierania plików 109

Klasa JavascriptExecutor 110Skrolowanie strony 111Pod wietlanie elementów 112Otwieranie nowego okna przegl darki 113Kolektor b dów JavaScript 114

Podsumowanie 116

Poleć książkęKup książkę

Page 5: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Spis tre ci

5

Rozdzia 5. Frameworki Selenium WebDriver 117

Programowanie sterowane zachowaniem 118Framework BDD Cucumber 118

Framework sterowany danymi JXL API 127Zapis i odczyt arkusza Excela 127Proste testy sterowane danymi 129Testowanie sterowane danymi z wykorzystaniem biblioteki 131Testowanie sterowane danymi z wykorzystaniem TestNG i adnotacji @dataProvider 134

Framework sterowany danymi Apache POI 136Model HSSF — arkusz binarny 138Model XSSF — arkusz SpreadsheetML (.xlsx) 141Model SS — arkusze binarne i SpreadsheetML 143

Framework sterowany danymi z pliku tekstowego 144Testy sterowane danymi z wykorzystaniem TestNG i adnotacji @dataProvider

— plik tekstowy 146Framework sterowany danymi z pliku w a ciwo ci 148

Testy sterowane danymi z wykorzystaniem TestNG i adnotacji @dataProvider— plik w a ciwo ci 151

Framework sterowany danymi CSV 153Framework sterowany s owami kluczowymi 155Framework hybrydowy 157Podsumowanie 159

Skorowidz 161

Poleć książkęKup książkę

Page 6: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Poleć książkęKup książkę

Page 7: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

1

Selenium IDE

Selenium IDE (ang. Integrated Development Environment — zintegrowane rodowisko progra-mistyczne) jest narz dziem typu open source, pozwalaj cym nagrywa i odtwarza skryptySelenium. Jest zintegrowane z przegl dark Firefox i stanowi jej rozszerzenie. Jest od wie onymnarz dziem do automatyzacji testów interfejsów sieciowych korzystaj cych z ró nego rodzajulokatorów na stronie. Lokatory mog by oparte na atrybutach lub strukturze i mog zawieraidentyfikator, nazw , cze, cie k XPath, CSS i DOM. IDE zawiera ca funkcjonalnoSelenium, pozwalaj c u ytkownikom na r czne nagrywanie, odtwarzanie, edycj i debugowanietestów w przegl darce. Akcje u ytkownika na stronie mog zosta nagrane i wyeksportowanew dowolnym spo ród najpopularniejszych j zyków programowania, takich jak Java, C#, Rubyi Python.

Program Selenium Builder jest alternatywnym narz dziem dla Selenium IDE, równie pozwala-j cym nagrywa i odtwarza dzia ania na stronie internetowej. Jest rozszerzeniem przegl darkiFirefox, podobnym do Selenium IDE, ale posiadaj cym równie pewne unikalne funkcjonalno-ci niedost pne w Selenium IDE. Selenium Builder jest narz dziem udost pnianym przez

Sauce Labs, który wykonuje testy na Sauce Cloud za pomoc interfejsu Selenium Builder.

W tym rozdziale dowiesz si o: Mo liwo ciach nagrywania i odtwarzania dost pnych za po rednictwem Selenium IDE. Funkcjach Selenium IDE. Testach sterowanych danymi w Selenium IDE. Funkcjach JavaScript w Selenium IDE. Nagrywaniu i odtwarzaniu w Selenium Builder. Testach sterowanych danymi w Selenium Builder. Selenium Builder w chmurze.

Poleć książkęKup książkę

Page 8: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

14

Selenium IDE to rozszerzenie przegl darki Firefox, pozwalaj ce nagrywa i odtwarza aplikacjesieciowe. Pozwala jednak na wi cej ni tylko nagrywanie i odtwarzanie. Pu apki pozwalaj nadebugowanie polece IDE krok po kroku w trakcie ich wykonywania. IDE posiada trzy ró netypy paneli — s to: lewy panel, panel przypadków testowych i panel logowania/referencji/

elementów UI/zwijany.

Selenium IDE mo esz uruchomi za pomoc menu Narz dzia: Narz dzia/Selenium IDE.IDE mo na otworzy równie za pomoc kombinacji klawiszy Ctrl+Shift+S lub za pomocikony dost pnej w prawym górnym rogu przegl darki Firefox. Ikona Selenium zosta a poka-zana na poni szym zrzucie ekranowym.

Po uruchomieniu IDE w lewym panelu utworzony zostanie nowy przypadek testowy bez nazwy.Aby rozpocz nowy przypadek testowy, wybierz File/New Test Case lub wykorzystaj skrót klawi-szowy Ctrl+N.

Aby rozpocz nagrywanie skryptów testowych, kliknij okr g , czerwon ikon na paskuodtwarzania. Domy lnie przycisk nagrywania b dzie aktywny, a skrypty testowe s nagrywanew Selenese, specjalnym j zyku podobnym do HTML. Pasek odtwarzania zosta przedstawionyna poni szym zrzucie ekranowym.

Suwak Fast-Slow pozwala regulowa szybko wykonywania testu; przycisk Play All pozwala wykona wszystkie przypadki testowe w zestawie, gdzie zestaw stanowi zbiór przypad-ków testowych; a przycisk Play pozwala uruchomi aktualny przypadek testowy. PrzyciskPause/Resume wstrzymuje na chwil wykonywanie i pozwala je wznowi w dogodnej chwili.

Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach Command (polecenie), Target(cel) i Value (warto ). Kolumna Command instruuje IDE, co ma zrobi , i mo e posiada trzyró ne typy warto ci:

akcje, akcesory, sprawdzenia.

Selenium IDE posiada list swbudowanych polece , pozwalaj cych wykonywa testy zgod-nie z oczekiwaniami. Dodawanie do Selenium IDE polece zdefiniowanych przez u ytkow-nika jest mo liwe i mo e by wykonane poprzez rozszerzanie istniej cych metod JavaScript. Pole-cenie mo e by jednego z trzech powy ej podanych typów. Podczas generowania skryptówomawiane polecenia mo na atwo edytowa i zamienia na polecenia alternatywne.

Poleć książkęKup książkę

Page 9: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

15

Polecenia akcji pozwalaj modyfikowa stan aplikacji i mog by typu action (akcja) i actionAndWait(akcja i oczekiwanie). Polecenia akcji posiadaj ce sufiks AndWait pozwalaj stronie w pe ni siza adowa przed uruchomieniem kolejnego polecenia.

Przyk ady polece akcji to: open, type, typeAndWait, select, selectAndWait, check, checkAndWait,click i clickAndWait.

Akcesory wykrywaj stan aplikacji i zapisuj go w zmiennej; store, storeText i storeValue topolecenia wykorzystywane do przechowywania warto ci. Na poni szym zrzucie ekranowymsearch to zmienna, a prashanth sams to szukane s owo. Nast pnie warto jest pobierana i wy-korzystywana jako parametr akcji, ${search}. Powy szy scenariusz przedstawiony zosta na poni -szym zrzucie ekranowym.

Sprawdzenia weryfikuj stan aplikacji poprzez porównanie z oczekiwanym wynikiem. Dost pnes w trzech ró nych trybach: assert, verify i waitFor. Assert w przypadku nieudanego spraw-dzenia zatrzymuje wykonywanie testu, verify w przypadku nieudanego sprawdzenia pozwalana kontynuacj testu, a waitFor oczekuje na wyst pienie okre lonego stanu i ko czy si pora kpo przekroczeniu dozwolonego czasu. Domy lnie dozwolony czas ustawiony jest na 30 sekund.W Selenium IDE dozwolony czas mo na skonfigurowa za pomoc menu Options.

Pola Target pozwalaj IDE na identyfikowanie elementów, a ogólna sk adnia pola Target jestnast puj ca:

locatorType = argument

Oto przyk adowy Target:

css=#gbqfq

Panel Log/Reference/UI-Element/Rollup znajduje si u do u IDE i zosta przedstawiony nazrzucie ekranowym zamieszczonym na nast pnej stronie.

Ten panel pozwala u ytkownikowi przegl da mi dzy innymi zalogowane informacje, odniesie-nia do komend oraz elementów UI-Element i Rollup. Po zainstalowaniu wtyczki Neustar dlaSelenium IDE wraz z innymi zak adkami zostanie pokazana zak adka Neustar Script Uploader.Narz dzie Neustar WPM (wcze niej znane pod nazw Browsermob) s u y do zarz dzania testamiwydajno ciowymi i obci eniowymi aplikacji sieciowych.

Poleć książkęKup książkę

Page 10: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

16

Logowanie zapisuje wszystkie kroki wykonywania testu i wykorzystywane jest g ównie do celówdebugowania. Menu Debug w dolnym panelu zawiera list opcji: Info, Debug, Warn i Error.Opcje te pozwalaj filtrowa wiadomo ci dotycz ce statusu, ostrze e i b dów i pozwalaj po-prawi czytelno listy.

Po klikni ciu wiersza panelu Test Case zak adka Reference b dzie zawiera dok adne obja nie-nie polece IDE dla klikni tego przypadku testowego. W przypadku polece zdefiniowanychprzez u ytkownika zak adka Reference nie b dzie zawiera a adnych informacji. Rollup wykonujezestaw polece w jednym kroku; taki zestaw polece mo e by wielokrotnie wykorzystywanyw ramach przypadku testowego. Wi cej informacji na temat zak adek UI-Element i Rollupznajdziesz w dokumentacji dost pnej w menu Help/UI-Element Documentation.

Podczas nagrywania skryptów testowych Selenium IDE zapewnia opcje bazuj ce na interfejsiedla ka dego klikni cia prawego przycisku myszy na elementach strony WWW. Aby to osi gn ,kliknij prawym przyciskiem na stronie i wybierz Show All Available Commands (poka wszystkiedost pne polecenia). Poni szy zrzut ekranowy jest skutkiem takiego dzia ania.

Poleć książkęKup książkę

Page 11: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

17

Odtwarzanie WebDriverFunkcjonalno odtwarzania WebDriver w Selenium IDE pozwala na uruchamianie testów nadowolnej z najpopularniejszych przegl darek: Chrome, Firefox, HtmlUnit, Internet Exploreri Opera. Domy lnie funkcjonalno odtwarzania WebDriver jest wy czona i nieaktywna. Abyuruchamia skrypty Selenium IDE, musisz w czy ustawienia odtwarzania WebDriver.

Uruchom Selenium IDE i wybierz opcj Options… z menu Options. Przejd do zak adkiWebDriver i zaznacz pole Enable WebDriver. Teraz ponownie uruchom Selenium IDE, abyw czy funkcjonalno odtwarzania WebDriver. Po zmianie nazwy przegl darki ponowne uru-chomienie Selenium IDE nie jest konieczne. Omawiane tu kwestie zosta y przedstawione nazrzucie ekranowym na nast pnej stronie.

Warunki odtwarzania WebDriverPoni ej znajduj si wymagania, które musz by spe nione, aby móc w czy funkcjonalnoodtwarzania WebDriver.

Pobranie najnowszej wersji biblioteki (JAR) Selenium Server. Instalacja Javy do uruchomienia serwera Selenium Server. Pobranie najnowszych sterowników dla popularnych przegl darek (chromedriver,

IEDriver itd.).

Poleć książkęKup książkę

Page 12: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

18

Selenium Server mo e by uruchomiony r cznie za pomoc terminala lub wiersza polece .Otwórz terminal lub wiersz polece , znajd plik JAR Selenium Server i uruchom polecenie:

java -jar selenium-server-standalone-<version-number>.jar

Teraz mo esz uruchomi polecenie:

java -jar selenium-server-standalone-2.44.0.jar

Aby uruchomi testy za pomoc WebDriver, kliknij przycisk Play w Selenium IDE. Aby uru-chamia testy w przegl darce Chrome, zamie tekst firefox na chrome w opcjach Selenium IDE,zgodnie z poni szym zrzutem ekranowym.

Poleć książkęKup książkę

Page 13: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

15

Konieczne jest ustawienie cie ki ChromeDriver dla Twojej stacji roboczej. Najnowszy sterownikChromeDriver mo esz pobra pod adresem http://chromedriver.storage.googleapis.com/index.html?path=2.9/.

Poni ej podano czynno ci pozwalaj ce ustawi cie k rozszerzenia ChromeDriver na ró nychplatformach.

Na komputerze z systemem Windows: 1. Kliknij dwukrotnie i otwórz okno Ten komputer. 2. Kliknij prawym przyciskiem w dowolnym miejscu okna i wybierz W a ciwo ci. 3. Kliknij Zaawansowane ustawienia systemu. 4. Kliknij przycisk Zmienne rodowiskowe na zak adce Zaawansowane. 5. W sekcji Zmienne systemowe wybierz zmienn o nazwie Path i kliknij przycisk Edytuj. 6. Rozpakuj teraz pobrany plik ChromeDriver i skopiuj cie k lokalizacji. 7. Wklej skopiowan cie k do zmiennej Path (w sekcji Zmienne systemowe) i kliknijprzycisk OK.

Na komputerze z systemem Linux:Otwórz terminal i uruchom polecenia:

$ wget http://chromedriver.storage.googleapis.com/2.7/chromedriver_linux64.zip$ Unzip chromedriver_linux64.zip$ cp chromedriver /usr/local/bin$ chmod +x /usr/local/bin/chromedriver

Na komputerze Mac: 1. Rozpakuj spakowan paczk (chromedriver_mac32.zip). 2. Przekopiuj sterownik do katalogu /usr/bin. 3. Zostaniesz poproszony o podanie has a administratora; wprowad je, aby ustawi

cie k .

Priorytety lokatorówPriorytetowanie pozwala ustala priorytety lokatorów podczas nagrywania skryptów. Funkcjonal-no ta pozwala ustawi wysoki priorytet do generowania skryptów zgodnie z preferencjami u yt-kownika odno nie do lokatorów. Na przyk ad zmieniaj c kolejno csslocator z pi tej na pierwszpozycj , sprawimy, e elementy b d tworzone za pomoc CSS, czyli zmienna locatorType b dziedomy lnie ustawiona na CSS.

Przyk adem mo e by CSS = argument.

Poleć książkęKup książkę

Page 14: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

20

Uruchom Selenium IDE, wybierz Options... z menu Options i przejd do zak adki LocatorBuilders. Panel po lewej b dzie zawiera list dost pnych kreatorów lokatorów, takich jak ui, id,link, name, css, dom:name, xpath:link, xpath:img, xpath:attributes, xpath:idRelative, xpath:href,dom:index i xpath:position. Lista ta zosta a przedstawiona na poni szym zrzucie.

Aby zmieni kolejno konstruktorów lokatorów, mo esz je przeci ga . Mo esz teraz kliknprzycisk OK i zrestartowa Selenium IDE, aby zmiany wesz y w ycie. Aby wróci do domy l-nych ustawie Selenium IDE, kliknij przycisk Reset Options znajduj cy si w lewym dolnymrogu okna.

Unikanie eksportu SeleniumEksportowanie przypadków testowych za ka dym razem mo e przeszkadza u ytkownikowi.Selenium IDE zawiera wietn funkcj pozwalaj c unikn problemów z eksportem. Klikni -cie przycisku Source pod panelem przypadku testowego wy wietli aktualny przypadek testowyw j zyku Selenese. Selenium IDE przekszta ca przypadek testowy z j zyka Selenese na prefero-wany przez u ytkownika format, na przyk ad, Java/JUnit4/WebDriver.

Poleć książkęKup książkę

Page 15: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

21

Uruchom Selenium IDE i wybierz Options… z menu Options. Upewnij si , e opcja Enableexperimental features (w cz funkcje eksperymentalne) jest w czona, i kliknij przycisk OK. Kliknijopcj Format w menu Options i wybierz preferowany format.

Mo esz wybra na przyk ad Java/JUnit4/WebDriver, zgodnie ze zrzutem ekranowym poni ej.Aby zmiany zosta y wprowadzone, musisz zrestartowa Selenium IDE. Selenium IDE nie wspieraeksportu w TestNG z wykorzystaniem WebDriver (Java/JUnit4/WebDriver).

Po wy czeniu funkcji Table zak adka automatycznie zmieni si na widok Source ( ród a), zgod-nie z poni szym zrzutem ekranowym.

Poleć książkęKup książkę

Page 16: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

22

Schowek Selenium IDEKopiowanie fragmentów kodu za po rednictwem Clipboard Format (schowka) jest jednym z naj-szybszych sposobów pozyskania wygenerowanych skryptów. Fragment kodu mo e zawiera jednlub dwie linie kodu. Poni szy zrzut ekranowy wy wietla ró ne typy formatów eksportu dost pnew opcji Clipboard Format.

Uruchom Selenium IDE, najed mysz na opcj Clipboard Format w menu Options i wybierzpreferowan kombinacj formatów.

Przyk adem kombinacji formatów jest Java/JUnit4/WebDriver. Domy lnym formatem jestformat HTML. Poni szy zrzut ekranowy przedstawia kopiowanie wiersza z panelu Test Case.

Poleć książkęKup książkę

Page 17: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

23

Skopiuj wiersz z panelu Test Case (zgodnie z powy szym zrzutem ekranowym) i wklej jako frag-ment kodu.

driver.findElement(By.id("gbqfq")).clear();driver.findElement(By.id("gbqfq")).sendKeys("prashanthsams");

Testy sterowane danymiParametryzacja to cz techniki sterowania danymi. Pozwala pozyska warto ci wsadowe zeród a zewn trznego. Testy sterowane danymi s wykorzystywane do weryfikacji faktycznych

i oczekiwanych warto ci ze ród a zewn trznego. Selenium IDE odgrywa znacz c rol w para-metryzacji, poniewa operuje na ró nych zestawach permutacji i kombinacji. Zobaczmy, jakwykorzysta plik JavaScript jako ród o danych dla testów sterowanych danymi. Poni ej przed-stawiona zosta a sk adnia JavaScript dla parametryzacji.

varname = "warto "

Na przyk ad utwórz plik JavaScript (Datasource.js) zawieraj cy nast puj ce s owa kluczowe:

Search1 = "PrashanthSams"Search2 = "Selenium Podstawy"

Uruchom Selenium IDE i wybierz Options… z menu Options, Option/Options.... Przejd teraz dopola Selenium IDE extensions (rozszerzenia Selenium IDE) i wybierz plik .js utworzonywcze niej (Datasource.js), zgodnie z pierwszym zrzutem ekranowym zamieszczonym na na-st pnej stronie.

Uruchom teraz powtórnie Selenium IDE, aby zmiany wesz y w ycie. Inicjalizujesz, przechowu-jesz i pobierasz warto ci z pliku .js przy wykorzystaniu polecenia storeEval, zgodnie z drugimzrzutem ekranowym zamieszczonym na nast pnej stronie.

Search1 i Search2 to zmienne pobieraj ce odpowiadaj ce im s owa kluczowe z pliku JavaScript.Warto ci te s zapisywane powtórnie w nowych zmiennych GoogleSearch1 i GoogleSearch2,zgodnie z drugim zrzutem ekranowym zamieszczonym na nast pnej stronie.

Metody JavaScript zdefiniowane przez u ytkownikaAkcje IDE, akcesory i sprawdzenia mog by definiowane przez u ytkownika i dostosowywane.Aby to osi gn , u ytkownik powinien doda metody JavaScript do prototypu obiektu Seleniumi prototypu obiektu PageBot. Selenium IDE weryfikuje metody zdefiniowane przez u ytkownikaprzy starcie. Rozszerzenia Selenium Core w menu Options… wspieraj adowanie plików JavaScriptzdefiniowanych przez u ytkowników.

Poleć książkęKup książkę

Page 18: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

24

Poleć książkęKup książkę

Page 19: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

25

Rozwa my przyk ad krok po kroku. 1. Przejd do strony https://sites.google.com/site/seleniumworks/selenium-ide-data-driveni pobierz pliki JavaScript:

datadriven.js goto_sel_ide.js user-extensions.js

2. Uruchom Selenium IDE i wybierz Options… z menu Options, Option/Options....Przejd do pola Selenium Core extensions i prze lij pliki (user-extensions.js,goto_sel_ide.js i datadriven.js) zgodnie z poni szym zrzutem ekranowym.Nast pnie zrestartuj Selenium IDE, aby zmiany wesz y w ycie.

3. W Selenium IDE plik XML jest wykorzystywany jako ród o danychdo przechowywania warto ci, natomiast datadriven.js zosta zaprojektowanydo wspierania formatu XML.Oto przyk ad ród a danych w formacie XML:

<testdata> <test varname="warto " /> <test varname="warto " /> <test varname="warto " /></testdata>

Utwórz plik XML z rozszerzeniem .xml (data.xml). varname jest nazw zmiennej,a warto odnosi si do s owa kluczowego w znaczniku <test>. Przyk ad takiego pliku:

<testdata> <test phrase=" Selenium Automatyczne testowanie aplikacji " /> <test phrase="seleniumworks.com" /> <test phrase="prashanthsams" /></testdata>

Poleć książkęKup książkę

Page 20: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

26

4. Przyjrzyjmy si dok adnie poni szym poleceniom: loadTestData jest poleceniemzdefiniowanym przez u ytkownika, pobieraj cym ród o danych XML, whilei endWhile to p tla, natomiast nextTestData sprawdza dane z kolejnego wierszaród a danych. U ytkownik mo e doda dowoln liczb metod JavaScript. Poni szy

zrzut ekranowy przedstawia ten krok.

Funkcje JavaScript w Selenium IDEOprócz definiowania polece i wprowadzania ich za po rednictwem user-extensions.js SeleniumIDE umo liwia równie u ytkownikom tworzenie zapyta lub funkcji JavaScript bezpo redniow polu Target. Uruchommy na przyk ad wyszukiwanie Google dla losowej liczby od 1 do 100.

Poleć książkęKup książkę

Page 21: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

27

Poni szy kod HTML pozwoli Ci przekonwertowa poszczególne kroki na skrypt gotowy douruchomienia.

<tr> <td>storeEval</td> <td>'Losowa liczba ' + Math.floor(Math.random() * 100);</td> <td>search</td></tr><tr> <td>echo</td> <td>${search}</td> <td></td></tr><tr> <td>open</td> <td>/</td> <td></td></tr><tr> <td>type</td> <td>id=lst-ib</td> <td>${search}</td></tr>

Proste wywo anie JavaScriptDomy lne polecenie runScript jest bardzo pot ne i pozwala wywo ywa proste funkcjeJavaScript bezpo rednio z IDE, na przyk ad javascript{alert("Hello!")}.

Zobaczmy, jak mo emy wy czy aktywne pole tekstowe i w czy nieaktywne pole tekstowe,korzystaj c z kodu:

document.getElementsByName('****')[0].setAttribute('disabled', '')document.getElementsByName('****')[0].removeAttribute('disabled');

Poleć książkęKup książkę

Page 22: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

28

Przewijanie kó kiem myszyZdarzenie scroll jest aktualnie niedost pne w Selenium IDE. Jednak rozszerzenie user-exten

sions.js zawiera metod JavaScript pozwalaj c przewija stron internetow .

Przejd na stron https://sites.google.com/site/seleniumworks/selenium-ide-tricks i pobierz plikuser-extensions.js. To rozszerzenie zawiera polecenia IDE: while, endWhile, gotoIf, gotoLabeli push. Zwi ksz warto do 10 zale nie od pionowej d ugo ci strony, zgodnie z poni szym zrzutemekranowym.

Parametryzacja przy wykorzystaniu tablicPolecenie Selenium IDE storeEval jest wykorzystywane do przechowywania warto ci w zmien-nej podczas uruchamiania skryptów, natomiast storedVars to tablica asocjacyjna JavaScriptzawieraj ca warto ci indeksowane ci gami znaków. W poni szym przyk adzie storeEval zapisujew tablicy list rzek, a storeEval inicjalizuje i inkrementuje warto ci. Niektóre z polece wykorzy-stanych w tej sekcji, na przyk ad while i endWhile, s zdefiniowane przez u ytkownika. PolecenieendWhile jest wykorzystywane do zako czenia p tli, gdy warto w tablicy osi gnie maksimum.Poni szy zrzut ekranowy przedstawia omawiane polecenia.

Poleć książkęKup książkę

Page 23: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

29

Przyjrzyjmy si innemu przyk adowi zaawansowanej parametryzacji przy wykorzystaniu SeleniumIDE. Wejd na stron https://sites.google.com/site/seleniumworks/selenium-ide-tricks i pobierz plikuser-extensions.js. Poni szy zrzut ekranowy przedstawia esencj naszego omówienia.

W tym przyk adzie warto ci s wstawiane do tablicy r cznie, a skrypt wykonuje ich wyszukiwaniew Google.

Selenium BuilderSelenium Builder to narz dzie do nagrywania i odtwarzania testów podobne do Selenium IDEi stanowi ce rozszerzenie dla przegl darki Firefox. Posiada pewne unikalne funkcje, którychnie posiada Selenium IDE. Na przyk ad integracj z GitHub pozwalaj c eksportowa zestawytestów do repozytorium GitHub i je zatwierdza oraz integracj z TestingBot pozwalaj cwykonywa testy w chmurze. Wpiera równie wi cej j zyków ni Selenium IDE, w czaj cw to j zyki takie jak JSON, Java/TestNG, NodeJS WD, NodeJS Mocha i NodeJS Protractor.Dzi ki swoim zaawansowanym funkcjom Selenium Builder jest uwa any za przysz o SeleniumIDE. Poni ej znajduje si zrzut ekranowy Selenium Builder.

Poleć książkęKup książkę

Page 24: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

30

Nagrywanie i odtwarzaniePo zainstalowaniu rozszerzenia Selenium Builder w przegl darce Firefox otwórz testowan stroninternetow (na przyk ad www.google.pl). Jest kilka sposobów na otwarcie Selenium Builder:

Kliknij prawym przyciskiem na stronie i wybierz Launch Selenium Builder. Wybierz Selenium Builder z menu Tools, czyli Tools/Web Developer/Launch

Selenium Builder. Mo esz równie skorzysta ze skrótu klawiszowego Ctrl+Alt+B.

Selenium Builder powinien mie opcj Selenium 2 pozwalaj c nagrywa skrypty WebDriver.U ytkownik mo e atwo stwierdzi , e strona jest nagrywana, poniewa zak adka jest zaznaczo-na kolorem zielonym, zgodnie z poni szym zrzutem ekranowym.

Poleć książkęKup książkę

Page 25: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

31

Selenium Builder pozwala kontrolowa nagrywanie testów aplikacji sieciowej. Pozwala u ytkow-nikom weryfikowa testy przy wykorzystaniu przycisku Record a verification. Klikni cie przyciskupod wietla tekst do sprawdzenia po najechaniu na niego kursorem myszy. Funkcja mouseoverjest wietn funkcj rozszerzenia Selenium Builder pozwalaj c wykona operacj najechaniana element kursorem myszy. Zaznacz opcj Record mouseovers, aby nagrywa akcje najechaniana element kursorem myszy. Poni szy zrzut ekranowy przedstawia omawian funkcj .

Zatrzymaj nagrywanie skryptu i wyeksportuj go (File/Export) w preferowanym formacie.

Testy sterowane danymiSelenium Builder potrafi importowa testy utworzone przy wykorzystaniu Selenium IDE,poniewa formatem natywnym obu narz dzi jest Selenese. Eksportowanie skryptów Seleniumw formacie Java/TestNG/WebDriver pozwoli unikn dodatkowego wysi ku zwi zanego z pracz TestNG. TestNG to jeden z najbardziej popularnych frameworków dla testów jednostkowych,jest podobny do JUnit dla programów Java.

Pomimo e Selenium Builder jest narz dziem do nagrywania i odtwarzania, pozwala te u ytkow-nikom wykonywa podstawowe testy sterowane danymi z wykorzystaniem ród a danych.Warto ci mog by równie tymczasowo przechowywane w Selenium Builder przy wykorzystaniuopcji Manual Entry (Data/Manual Entry). Aby to zrobi , utwórz zmienn i przypisz warto zgod-nie z poni szym zrzutem ekranowym.

Poleć książkęKup książkę

Page 26: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

32

Selenium Builder zawiera wsparcie dla testów sterowanych danymi i pozwala robi testy przyu yciu plików w formacie JSON, XML i CSV. Format CSV mo e by wykorzystywany do pracyz plikami zawieraj cymi du e ilo ci danych. Przyjrzyjmy si formatom, jakie mo esz wykorzystado tworzenia testów.

Testowanie przy wykorzystaniu plików JSONOto sk adnia JSON dla ród a danych:

[{ "varname": "warto ", "varname": "warto ", ... },{ "varname": "warto ", "varname": "warto ", ... },...]

Na przyk ad utwórz plik JSON z rozszerzeniem .json (data.xml). W poni szym przyk adzie foo tonazwa zmiennej, natomiast warto ci to prashanth i sams.

[ {"foo": "prashanth"}, {"foo": "sams"}]

Aby odwo a si do zmiennych przechowywanych w pliku JSON, najlepiej odwo a si do zmien-nych, na przyk ad ${foo}, we wcze niej nagranych krokach, zgodnie ze zrzutem ekranowympowy ej.

Testowanie przy wykorzystaniu plików XMLOto sk adnia XML dla ród a danych:

<testdata> <testvarname="warto " /> <testvarname="warto " /> <testvarname="warto " /></testdata>

Poleć książkęKup książkę

Page 27: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Rozdzia 1. • Selenium IDE

33

Na przyk ad utwórz plik XML z rozszerzeniem .xml (data.xml). W poni szym przyk adzie searchjest nazw zmiennej, a warto odnosi si do s owa kluczowego w znaczniku <test>.

<testdata> <test search="selenium automatyczne testowanie aplikacji" /> <test search="prashanthsams" /> <test search="seleniumworks" /></testdata>

Selenium Builder w chmurzeSelenium Builder pozwala u ytkownikom uruchamia testy na ró nych przegl darkach w chmu-rze bezpo rednio za po rednictwem interfejsu. Aby zintegrowa Selenium Builder z Sauce i w -czy mo liwo eksportowania i odtwarzania skryptów w Sauce OnDemand, konieczna jest insta-lacja wtyczki Selenium Builder Sauce. Uruchom Selenium Builder, kliknij przycisk Manageplugins i zainstaluj wtyczk Sauce for Selenium Builder. Przed uruchomieniem testów u yt-kownicy powinni równie za o y konto Sauce. Wi cej informacji na temat uruchamiania testóww chmurze znajdziesz pod adresem https://saucelabs.com/. Poni szy zrzut ekranowy przedstawiastron Plugins (wtyczek).

Poleć książkęKup książkę

Page 28: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

34

Pozyskaj klucz dost powy po zalogowaniu si do swojego konta Sauce lub klikaj c look up access keyw Selenium Builder. Klucz dost powy jest inny dla ka dego u ytkownika.

Wybierz Run on Sauce OnDemand z meu Run. Przed uruchomieniem testów upewnij si , eustawienia Sauce Settings zosta y zdefiniowane. Musisz tylko wpisa Sauce Username (nazwau ytkownika Sauce), Sauce Access Key (klucz dost powy Sauce) oraz wersje systemów operacyj-nych i przegl darek. Nast pnie zaloguj si do Sauce i zapoznaj si z wynikami testów. Testy szapisywane w postaci filmów i zdj , które u ytkownik mo e przejrze .

PodsumowanieW tym rozdziale pozna e funkcje Selenium IDE i Selenium Builder oraz dowiedzia e si ,jak dzi ki Selenium IDE automatyzowa proste testy.

W kolejnym rozdziale omówimy zaawansowane testy kompatybilno ci z wykorzystaniem Sele-nium WebDriver. WebDriver pozwala wykonywa testy na ró nych przegl darkach.

Poleć książkęKup książkę

Page 29: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Skorowidz

Aabsolutny XPath, 56adnotacja

@dataProvider, 134, 146, 151@FindBy, 92@FindBys, 93

Ajax, 82akcje myszy i klawiatury, 74Apache POI, 136Apple Safari, 37arkusz SpreadsheetML, 141arkusze binarne, 138, 143ATDD, Acceptance-Driven Development, 118autentykacja, 74automatyzacja testów, 40

Bbezinterfejsowy WebKit, 45biblioteka

Java.awt.Robot, 105JExcel, 131JSErrorCollector, 114

b dy JavaScriptu, 114BrowserStack, 42

Cchmura, 29, 40Chrome, 49ciasteczka, 64CSV, Comma Separated Values, 153Cucumber JVM, 119

Eeksport Selenium, 16Excel, 127

FFirefox, 49framework, 117

BDD Cucumber, 118BDD JBehave, 123hybrydowy, 157sterowany danymi, 136, 144, 148, 153sterowany danymi JXL API, 127sterowany s owami kluczowymi, 155

funkcjaaccept(), 73clear(), 55click(), 54close(), 54dismiss(), 73dragAndDrop(), 75dragAndDropBy(), 76findElement(), 56findElements(), 57get(), 63getAttribute(), 60getCurrentUrl(), 54getLocation(), 62getPageSource(), 54getSize(), 62getTagName(), 61getText(), 60, 73getTitle(), 54

Poleć książkęKup książkę

Page 30: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

162

funkcjaisDisplayed(), 61isEnabled(), 61isSelected(), 61navigate().back(), 63navigate().forward(), 63navigate().to(), 63quit(), 54sendKeys(), 55submit(), 55

funkcjeelementów WebElements, 60JavaScript, 22lokalizuj ce elementy, 55okna, 66WebDriver, 54wybieraj ce, 70

GGoogle Chrome, 36

HHSSF, Horrible SpreadSheet Format, 138HTMLUnitDriver, 47

IIDE, Integrated Development Environment, 9interfejs u ytkownika, 48Internet Explorer, 36

JJava Robot, 105JExcel, 131

Kklasa

EventFiringWebDriver, 93FileWriter, 153JavascriptExecutor, 110PageFactory, 90

klucz klienta, 43kolektor b dów JavaScript, 114

Llimity czasu, 87lokalizowanie elementów, 55

Mmetoda

addCookie(), 65afterChangeValueOf(), 97afterClickOn(), 96afterFindBy(), 96afterNavigateBack(), 94afterNavigateForward(), 94afterNavigateTo(), 95afterScript(), 97authenticateUsing(), 74beforeChangeValueOf(, 98beforeClickOn(), 96beforeFindBy(), 97beforeNavigateBack(), 95beforeNavigateForward(), 95beforeNavigateTo(), 95beforeScript(), 97build(), 74click(), 74clickAndHold(), 75contextClick(), 75deleteAllCookies(), 65deleteCookie(), 65deleteCookieNamed(), 66deselectAll(), 72deselectByIndex(index), 72deselectByValue(value), 72deselectByVisibleText(text), 72doubleClick(), 75FluentWait, 86getAllSelectedOptions(), 71getContents(), 128getCookieNamed(), 65getCookies(), 64getFirstSelectedOption(), 70getOptions(), 71getPosition(), 67getSize(), 67getWindowHandle(), 68getWindowHandles(), 68implicitlyWait(), 87

Poleć książkęKup książkę

Page 31: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Skorowidz

163

isElementPresent(), 82isMultiple(), 71keyDown(), 76keyUp(), 76maximize(), 66moveByOffset(), 76moveToElement(), 77onException(), 98pageLoadTimeout(), 87perform(), 77refresh(), 64release(), 77selectByIndex(index), 70selectByValue(value), 70selectByVisibleText(text), 70sendKeys(), 74, 77setPosition(), 68setScriptTimeout(), 87setSize(), 68switchTo.window(), 68write(), 128

metody w asne JavaScript, 19model

HSSF, 138SS, 143XSSF, 141

Mozilla Firefox, 36

Nnagrywanie, 26najechanie mysz , 79najlepsze praktyki, 81nawigacja, 63

Oobs uga

alertów, 72oczekiwania jawnego, 84, 85okien wyskakuj cych, 72, 105ramek iframe, 103stron wykorzystuj cych Ajax, 82testów, 69

oczekiwanie, 83jawne, 84

odczyt arkusza Excela, 127oddalenie strony, 78

odtwarzanie, 26WebDriver, 13

okna wyskakuj ce przegl darki, 106Opera, 37otwieranie nowego okna, 113

Pparametryzacja, 24PhantomJS, 45PhantomJSDriver, 46plik

testng.xml, 38testNG.xml, 141

pliki.properties, 148JSON, 28tekstowe, 144w a ciwo ci, 148XML, 28

pobieranie plików, 109pod wietlanie elementów, 112POI, Poor Obfuscation Implementation, 136polecenia

akcji, 11oczekiwania, 83

priorytety lokatorów, 15profil Firefox, 109programowanie

sterowane testami akceptacyjnymi, 118sterowane zachowaniem, 118

przechwytywanie zrzutów ekranowych, 107przegl darka, 36

Chrome, 36, 49Firefox, 36, 49Internet Explorer, 36Opera, 37Safari, 37

przegl darki bezinterfejsowe, 45, 47przewijanie kó kiem myszy, 24przybli enie

100%, 78strony, 78

Rramki iframe, 103relatywny XPath, 56

Poleć książkęKup książkę

Page 32: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach

Selenium. Automatyczne testowanie aplikacji

164

SSauceLabs, 40schowek Selenium IDE, 18sekret klienta, 43Selenium Builder, 9, 25

w chmurze, 29Selenium IDE, 9Selenium WebDriver, 9, 35, 36skrolowanie strony, 111s owa kluczowe, 155sprawdzenia, 11sterownik uruchamiaj cy zdarzenia, 99

Ttablice, 24TDD, Test-Driven Development, 118TestingBot, 43TestNG, 37, 134, 146, 151testowanie sterowane danymi, 131, 134testy

kompatybilno ci, 36na konkretnych wersjach przegl darki Firefox,

50na wielu przegl darkach, 35Selenium w chmurze, 40sterowane danymi, 19, 27, 129, 146, 151w przegl darce bezinterfejsowej, 45z niestandardowego profilu

Chrome, 52Firefox, 51

trybassert, 11verify, 11waitFor, 11

Uunikanie eksportu Selenium, 16usypianie w tku, 86

Wwarunki odtwarzania WebDriver, 13WebDriver, 13wykonywanie testów w chmurze, 42wykorzystanie TestNG, 134, 146, 151wywo anie JavaScript, 23wzorzec

Page Object, 88regex, 122

XXSSF, XML SpreadSheet Format, 141

Zzapis arkusza Excela, 127zdarzenia, 99zmienianie interfejsów u ytkownika, 48zrzut ekranowy, 107

Poleć książkęKup książkę

Page 34: Tytuł oryginału: Selenium EssentialsPause/Resume wstrzymuje na chwilÚ wykonywanie i pozwala je wznowiÊ w dogodnej chwili. Panel Test Case wy wietla wszystkie nagrane kroki w kolumnach