implementation our first webdriver script selenium webdriver tutorial 10
V predchádzajúcich dvoch tutoriáloch sme vás oboznámili so základnou architektúrou a funkcie WebDriveru a infraštruktúra potrebná na to, aby ste mohli začať pracovať so selénom WebDriver . Za predpokladu, že ste všetci mohli nastaviť systém so všetkými potrebnými pomocnými programami a balíkmi, sa posunieme ďalej s implementáciou nášho prvého testovacieho skriptu WebDriver.
Preto postupujeme vpred s následným Výukový program Selenium WebDriver , vytvorili by sme skript WebDriver. Rozptýlili by sme tiež svetlo na základné a bežne používané Príkazy WebDriver . Dozvedeli by sme sa tiež o lokalizačné stratégie prvkov používateľského rozhrania a ich zahrnutie do testovacích skriptov. Tiež by sme si podrobne preštudovali Get Commands.
Čo sa dozviete:
- Tvorba skriptov
- Návod na použitie kódu
- Vykonanie testu
- Vyhľadanie webových prvkov
- Typy lokátorov a ich syntax
- Záver
- Odporúčané čítanie
Tvorba skriptov
Na vytvorenie skriptu by sme použili projekt „Learning_Selenium“ vytvorený v predchádzajúcom tutoriáli a „gmail.com“ ako testovanú aplikáciu (AUT).
Scenár:
- Spustite prehliadač a otvorte „Gmail.com“.
- Overte názov stránky a vytlačte výsledok overenia.
- Zadajte užívateľské meno a heslo.
- Kliknite na tlačidlo Prihlásiť sa.
- Zatvorte webový prehliadač.
Krok 1: V rámci projektu „Learning_Selenium“ vytvorte novú triedu java s názvom „Gmail_Login“.
Krok 2: Skopírujte a vložte nasledujúci kód do triedy „Gmail_Login.java“.
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class Gmail_Login { /** * @param args */ public static void main(String() args) { // objects and variables instantiation WebDriver driver = new FirefoxDriver(); String appUrl = 'https://accounts.google.com'; // launch the firefox browser and open the application url driver.get(appUrl); // maximize the browser window driver.manage().window().maximize(); // declare and initialize the variable to store the expected title of the webpage. String expectedTitle = ' Sign in - Google Accounts '; // fetch the title of the web page and save it into a string variable String actualTitle = driver.getTitle(); // compare the expected title of the page with the actual title of the page and print the result if (expectedTitle.equals(actualTitle)) { System.out.println('Verification Successful - The correct title is displayed on the web page.'); } else { System.out.println('Verification Failed - An incorrect title is displayed on the web page.'); } // enter a valid username in the email textbox WebElement username = driver.findElement(By.id('Email')); username.clear(); username.sendKeys('TestSelenium'); // enter a valid password in the password textbox WebElement password = driver.findElement(By.id('Passwd')); password.clear(); password.sendKeys('password123'); // click on the Sign in button WebElement SignInButton = driver.findElement(By.id('signIn')); SignInButton.click(); // close the web browser driver.close(); System.out.println('Test script executed successfully.'); // terminate the program System.exit(0); } }
Vyššie uvedený kód je ekvivalentný textovému scenáru uvedenému skôr.
Návod na použitie kódu
Výpisy z importu:
import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.By;
Pred samotným skriptovaním musíme importovať vyššie uvedené balíčky:
dovoz org.openqa.selenium.WebDriver - Odkazuje na rozhranie WebDriver, ktoré je potrebné na vytvorenie inštancie nového webového prehliadača.
dovoz org.openqa.selenium.firefox.FirefoxDriver - Odkazy na triedu FirefoxDriver, ktorá je požadovaná, na vytvorenie inštancie konkrétneho ovládača pre Firefox v inštancii prehliadača vytvorenej pomocou rozhrania WebDriver.
dovoz org.openqa.selenium.WebElement - Odkazy na triedu WebElement, ktorá sa vyžaduje na vytvorenie inštancie nového webového prvku.
dovoz org.openqa.selenium.By - Odkazy na triedu Podľa, v ktorej sa volá typ vyhľadávača.
Akonáhle sa náš projekt rozrastie, je zrejmé a logické, že možno budeme musieť predstaviť niekoľko ďalších balíkov pre komplexnejšie a zreteľnejšie funkcie, ako sú napríklad manipulácie s programom Excel, pripojenie k databáze, protokolovanie, tvrdenia atď.
protokoly použité v každej vrstve modelu osi
Vytvorenie inštancie objektu
Ovládač WebDriver = nový FirefoxDriver ();
Vytvoríme referenčnú premennú pre rozhranie WebDriver a vytvoríme jej inštanciu pomocou triedy FirefoxDriver. Spustí sa predvolený profil prehliadača Firefox, čo znamená, že s inštanciou prehliadača Firefox by sa nenačítali žiadne rozšírenia a doplnky a aby sa spustil v bezpečnom režime.
Spustenie webového prehľadávača
driver.get (appUrl);
TO dostať () na inštancii WebDriver sa volá metóda na spustenie novej inštancie webového prehliadača. Sekvencia znakov reťazca odovzdaná ako parameter do súboru dostať () metóda presmeruje spustenú inštanciu webového prehliadača na adresu URL aplikácie.
Maximalizovať okno prehliadača
driver.manage (). window (). maximize ();
The maximalizovať () metóda sa používa na maximalizáciu okna prehľadávača krátko po presmerovaní na adresu URL aplikácie.
Načítajte názov stránky
driver.getTitle ();
The getTitle () metóda sa používa na načítanie názvu aktuálnej webovej stránky. Takto je možné načítaný titul načítať do reťazcovej premennej.
Porovnanie očakávaných a skutočných hodnôt:
if (expectedTitle.equals(actualTitle)) { System.out.println('Verification Successful - The correct title is displayed on the web page.'); } else { System.out.println('Verification Failed - An incorrect title is displayed on the web page.'); }
Vyššie uvedený kód používa podmienené príkazy java na porovnanie skutočnej a očakávanej hodnoty. Na základe získaného výsledku by sa vykonal tlačový výpis.
Okamžitý výskyt prvku WebElement
WebElement username = driver.findElement (By.id („e-mail“));
Vo vyššie uvedenom vyhlásení vytvoríme inštanciu odkazu na WebElement pomocou „Driver.findElement (By.id („ e-mail “))“. Používateľské meno je možné použiť na odkazovanie na textové pole E-mail v používateľskom rozhraní zakaždým, keď s ním chceme vykonať nejakú akciu.
Vymazať príkaz
otázky a odpovede na pohovor s podporou pre počítače pdf
username.clear ();
Metóda / príkaz clear () sa používa na vymazanie hodnoty prítomnej v textovom poli, ak existuje. Vymaže tiež predvolenú hodnotu zástupného symbolu.
príkaz sendKeys
username.sendKeys („TestSelenium“);
The sendKeys () metóda / príkaz slúži na zadanie / zadanie zadanej hodnoty (v zátvorkách) do textového poľa. Všimnite si, že sendKeys () metóda sa volá na objekt WebElement, ktorý sa vytvoril pomocou vlastnosti elementu zodpovedajúcej prvku UI.
Vyššie uvedený blok kódu zadáva reťazec „TestSelenium“ vo vnútri textového poľa E-mail v aplikácii Gmail.
sendKeys je jedným z najobľúbenejších príkazov v skriptoch WebDriver.
Kliknite na príkaz
SignInButton.click ();
Páči sa mi to sendKeys (), kliknite () je ďalší nadmerne používaný príkaz na interakciu s webovými prvkami. Kliknite () príkaz / metóda sa používa na kliknutie na webový prvok prítomný na webovej stránke.
Vyššie uvedený blok kódu klikne na tlačidlo „Prihlásiť sa“, ktoré sa nachádza v aplikácii Gmail.
Poznámky:
- Na rozdiel od metódy sendKeys () nemožno metódy click () nikdy parametrizovať.
- Kliknutím na webový prvok sa niekedy môže načítať nová stránka úplne. Aby sa takéto prípady udržali, je metóda click () kódovaná tak, aby počkala, kým sa stránka načíta.
Zatvorte webový prehľadávač
driver.close ();
Close () slúži na zatvorenie aktuálneho okna prehľadávača.
Ukončite program Java
System.exit (0);
najlepší softvér na prevod video súborov
Metóda Exit () násilne ukončí program Java. Pred ukončením programu Java preto nezabudnite zavrieť všetky inštancie prehľadávača.
Vykonanie testu
Testovací skript alebo jednoducho program Java je možné vykonať nasledujúcimi spôsobmi:
# 1. Na paneli s ponukami Eclipse je ikona na vykonanie testovacieho skriptu. Pozri nasledujúci obrázok.
Poznamenajte si, že sa vykoná iba vybraná trieda.
#dva. Pravým tlačidlom myši kliknite kdekoľvek vo vnútri triedy v editore, vyberte možnosť „Spustiť ako“ a kliknite na položku „Java aplikácia“.
# 3. Ďalšou skratkou na vykonanie testovacieho skriptu je - stlačte ctrl + F11.
Na konci cyklu spustenia sa zobrazí tlačové vyhlásenie „Testovací skript bol úspešne vykonaný.“ nájdete v konzole.
Vyhľadanie webových prvkov
Webové prvky vo WebDriveri je možné vyhľadávať a kontrolovať rovnakým spôsobom, ako sme to robili v predchádzajúcich tutoriáloch selénového IDE. Na kontrolu webového prvku v grafickom používateľskom rozhraní je možné použiť selénové IDE a Firebug. Na nájdenie webových prvkov sa dôrazne odporúča použiť selénové IDE. Po úspešnom nájdení webového prvku skopírujte a prilepte cieľovú hodnotu do kódu WebDriver. Typy lokátorov a lokalizačné stratégie sú takmer rovnaké, okrem syntaxe a ich použitia.
V aplikácii WebDriver sú webové prvky umiestnené pomocou dynamických vyhľadávačov (findElement (By.locatorType („hodnota lokátora“))).
Vzorový kód:
driver.findElement (By.id („e-mail“));
Typy lokátorov a ich syntax
Typ lokátora | Syntax | Popis |
---|---|---|
cssSelector | driver.findElement (By.cssSelector („Selektor CSS“))) | Vyhľadajte podľa hodnoty výber CSS |
id | driver.findElement (By.id („ID_of_Element“)) | Vyhľadajte podľa hodnoty atribút „id“ |
className | driver.findElement (By.className („Class_of_Element“)) | Vyhľadajte podľa hodnoty atribút „trieda“ |
linkText | driver.findElement (By.linkText („text“)) | Vyhľadajte podľa hodnoty text hypertextového odkazu |
partialLinkText | driver.findElement (By.partialLinkText („PartialText“)) | Vyhľadajte podľa hodnoty podtext hypertextového odkazu |
názov | driver.findElement (Podľa názvu („Meno_prvku“))) | Vyhľadajte podľa hodnoty Atribút „name“ |
xpath | driver.findElement (By.xpath („Xpath“)) | Vyhľadajte podľa hodnoty xpath |
tagName | driver.findElement (By.tagName („vstup“)) | Vyhľadajte podľa hodnoty jeho názov značky |
Záver
V tomto tutoriáli sme vyvinuli automatizačný skript pomocou nástrojov WebDriver a Java. Diskutovali sme tiež o rôznych komponentoch, ktoré tvoria skript WebDriver.
Tu sú základné informácie o tomto výučbe selénu WebDriver:
- Pred samotným skriptovaním musíme importovať niekoľko balíkov, aby sme mohli vytvoriť skript WebDriver.
- dovoz openqa.selenium.By;
- dovoz openqa.selenium.WebDriver;
- dovoz openqa.selenium.WebElement;
- dovoz openqa.selenium.firefox.FirefoxDriver;
- TO dostať () metóda použitá na spustenie novej inštancie webového prehliadača. Postupnosť znakov odovzdaná ako parameter do metódy get () presmeruje spustenú inštanciu webového prehliadača na adresu URL aplikácie.
- The maximalizovať () metóda sa používa na maximalizáciu okna prehliadača.
- The jasný() metóda sa používa na vymazanie hodnoty prítomnej v textovom poli, ak existuje.
- The sendKeys () metóda sa používa na zadanie zadanej hodnoty do textového poľa.
- Kliknite () metóda sa používa na kliknutie na webový prvok prítomný na webovej stránke.
- V aplikácii WebDriver možno webové prvky umiestniť pomocou dynamických vyhľadávačov.
- K dispozícii sú nasledujúce typy vyhľadávačov:
- id
- className
- názov
- xpath
- cssSelector
- linkText
- partialLinkText
- tagName
V ďalšom výučbe by sme sa zamerali na rámec, ktorý pomáha pri testovaní automatizácie známom ako TestNG. Mali by sme podrobnú štúdiu o rôznych druhoch anotácií poskytovaných rámcom.
Ďalší tutoriál # 11 : Pred ponorením sa do rámcov si pozrieme podrobnosti o JUnit - nástroji na testovanie jednotiek s otvoreným zdrojom. Väčšina programátorov používa JUnit, pretože je ľahký a jeho testovanie nevyžaduje veľké úsilie. Tento tutoriál poskytne informácie o JUnit a jeho použití v skripte selénu.
Poznámka pre čitateľov: Zatiaľ čo náš ďalší výukový program série Selenium je v režime spracovania, môžu si čitatelia začať vytvárať vlastné základné skripty WebDriver. Pre ďalšie skripty a koncepty budeme mať v tejto sérii rôzne ďalšie výukové programy Selenium WebDriver.
Ak máte problém s vytvorením alebo vykonaním skriptov WebDriver, dajte nám vedieť v komentároch.
Odporúčané čítanie
- Úvod do softvéru Selenium WebDriver - Výučba selénu č. 8
- Výukový program Cucumber Selenium: Cucumber Java Selenium WebDriver Integration
- Celé nastavenie a inštalácia WebDriver s výučbou Eclipse - Selenium č. 9
- Skontrolujte viditeľnosť webových prvkov pomocou rôznych typov príkazov WebDriver - selén - návod č. 14
- Efektívne scenáre selénu a riešenie problémov - scenáre selénu # 27
- Ako zaobchádzať s upozorneniami alebo vyskakovacími oknami v selenovom webovom ovládači - selénský výukový program č. 16
- Ladenie selénových skriptov pomocou denníkov (výučba Log4j) - výučba selénu č. 26
- Úvod do rámca JUnit a jeho použitie v selénovom skripte - selén výučba # 11