tesztelés kulcsfontosságú fázisa a szoftverfejlesztés életciklusa (SDLC). A kézi tesztelés különösen magában foglalja a tesztesetek fizikai végrehajtását az alkalmazásokkal szemben a hibák és hibák észlelésére. A manuális tesztelés azonban sok kihívást jelentett, és a tesztelési folyamat automatizálására is szükség volt. Ennek eredményeként bevezették a szelént, egy hatékony automatizált tesztelő eszközt.,
a Selenium egy nyílt forráskódú, automatizált tesztelő eszköz, amelyet különféle böngészők webes alkalmazásainak tesztelésére használnak. Tehát itt van a szomorú rész, a szelén csak webes alkalmazásokat tesztelhet. Az asztali és mobilalkalmazásokat nem lehet szelénnel tesztelni. Más eszközök, mint például a HP QTP és Appium is használhatók szoftver-és mobilalkalmazások tesztelésére.
kitűnjön társaitól ebben az értékelési szezonban
kezdje el a tanulást ingyenes tanfolyamainkkal
de mi teszi a szelént a széles körben használt tesztelő eszközré?, Íme néhány ok:
- a szelén könnyen használható, mivel lényegében JavaScript-ben fejlesztették ki.
- a Selenium tesztelheti a webes alkalmazásokat olyan böngészőkkel szemben, mint a Firefox, az Opera, A Chrome és a Safari, hogy néhányat említsünk.
- a teszt kód lehet írni a különböző programozási nyelvek, mint a Java, Perl, Python, PHP.
- a Selenium platformfüggetlen, és különböző operációs rendszerekre telepíthető, mint a Windows, Linux és Macintosh.
- a szelén integrálható olyan harmadik féltől származó eszközökkel, mint a JUnit és a TestNG a tesztkezeléshez.,
ha minden felkészültek a szelén interjú, itt vannak a felső 30 gyakran ismételt interjú kérdések.
kezdő szintű szelén Interjú kérdések
mik a szelén suite komponensek?
Selenium IDE
Ez egy Firefox / Chrome bővítmény, amelyet az automatizálási Szkriptek létrehozásának felgyorsítására fejlesztettek ki. Rögzíti a felhasználói műveleteket a webböngészőben, majd újrafelhasználható szkriptként exportálja őket.
Selenium Remote Control (RC)
RC Egy szerver, amely lehetővé teszi a felhasználók számára, hogy írjon alkalmazás tesztek különböző programozási nyelveken., A teszt szkript parancsait ez a szerver fogadja el, majd a Selenium core JavaScript parancsok formájában küldi el a böngészőnek. A böngésző ezután ennek megfelelően viselkedik.
Selenium WebDriver
WebDriver egy programozási felület, amely segít létrehozni és futtatni tesztesetek. Lehetővé teszi a webes elemek működését. Az RC-vel ellentétben a WebDriver nem igényel további kiszolgálót, és natív módon együttműködik a böngésző alkalmazásokkal.
Selenium Grid
a rácsot úgy tervezték, hogy parancsokat terjesszen különböző gépekre egyszerre., Lehetővé teszi a tesztek párhuzamos végrehajtását különböző böngészőkön és különböző operációs rendszereken. Rendkívül rugalmas, integrálva van más suite komponensekkel az egyidejű végrehajtáshoz.
mik a szelénvizsgálat korlátai?
- megbízható technikai támogatás hiánya: mivel a szelén nyílt forráskódú eszköz, nincs dedikált technikai támogatása a felhasználói lekérdezések megoldásához.
- csak webes alkalmazásokat tesztel: a Selenium-t integrálni kell olyan harmadik féltől származó eszközökkel, mint az Appium vagy a TestNG az asztali és mobil alkalmazások teszteléséhez.,
- korlátozott támogatás a kép teszteléséhez.
- nincs beépített jelentéstételi és tesztkezelési lehetőség: a szelént olyan eszközökkel kell integrálni, mint a TestNG vagy a JUnit többek között a tesztjelentés és a menedzsment megkönnyítése érdekében.
- megkövetelheti a programozási nyelvek ismeretét: a Selenium WebDriver elvárja, hogy a felhasználó alapvető ismeretekkel rendelkezzen a programozásról.
melyek a szelén által támogatott teszttípusok?
a szelén támogatja a regressziós vizsgálatot és a funkcionális vizsgálatot.,
regressziós tesztelés-a már végrehajtott tesztesetek teljes vagy részleges kiválasztása, amelyeket újra végrehajtanak a meglévő funkciók megfelelő működésének biztosítása érdekében.
az érintett lépések a következők: –
- újbóli tesztelés: a meglévő tesztcsomag összes tesztje végrehajtásra kerül. Nagyon drágának és időigényesnek bizonyul.
- regressziós teszt kiválasztása: a tesztek jellemző teszteknek, integrációs teszteknek, valamint a végpontok közötti teszteknek minősülnek. Ebben a lépésben néhány tesztet kiválasztunk.,
- a tesztesetek rangsorolása: a kiválasztott tesztesetek az üzleti hatás és a kritikus funkciók alapján kerülnek rangsorolásra.
funkcionális tesztelés-a funkcionális tesztelés magában foglalja az alkalmazás minden funkciójának ellenőrzését a szükséges specifikációval.
A következő az alábbi részt:
- Azonosítani teszt bemenet
- Számítási vizsgálati eredmény
- Execute teszt
- Hasonlítsa össze a teszt eredménye a tényleges eredmény
Mi a különbség a Szelén 2.0 Szelén 3.0?
szelén 2.,A 0 egy olyan eszköz, amely megkönnyíti a webes alkalmazások automatizált tesztjeinek fejlesztését. Ez az eredeti Selenium projekt egyesülését jelenti a WebDriver projekttel. A szelén RC elavult, mivel az egyesítést visszamenőleges kompatibilitásra használták
a szelén 3.0 a szelén 2.0 kiterjesztett változata. Ez eredendően visszafelé kompatibilis, és nem jár szelén RC. Az új verzió számos hibajavítással és nagyobb stabilitással járt együtt.,
mi az azonos eredetű politika és hogyan kezelik?
ugyanaz a származási politika biztonsági célokra elfogadott szolgáltatás. E házirend szerint egy webböngésző lehetővé teszi az egyik weboldalról származó szkriptek számára, hogy hozzáférjenek egy másik weboldal tartalmához, feltéve, hogy mindkét oldal azonos eredetű. Az eredet az URL-séma, a hostname és a portszám kombinációjára utal.
ugyanaz az Origin politika megakadályozza, hogy egy rosszindulatú szkript egy oldalon érzékeny adatokhoz férjen hozzá egy másik weboldalon.,
fontolja meg a JavaScript által használt programot google.com. ez a teszt alkalmazás elérheti az összes Google domain oldalt, mint például google.com/login, google.com/mail, stb. Azonban nem férhet hozzá más domainek oldalaihoz, mint például yahoo.com
szelén RC vezették be, hogy foglalkozzon ezzel. A szerver úgy működik, mint egy kliens konfigurált HTTP proxy, és “trükkök” a böngésző azt hinni, hogy a Selenium Core és a webalkalmazás tesztelt származik azonos eredetű.,
teljes verem Java Developer Course
A Master Web DevelopmentExplore Course
mi a Selenese? Hogy van besorolva?
a Selenese a szelén parancsok halmaza, amelyeket a webes alkalmazás tesztelésére használnak. A tesztelő tesztelheti a törött linkeket, létezik néhány objektum a felhasználói felületen, Ajax funkcionalitás, riasztások, ablak, listaopciók, és sokkal több a Selenese használatával.,
Akció: Parancsok, amelyek közvetlen kapcsolatban állnak az alkalmazás
Accessors: Lehetővé teszi a felhasználó számára, hogy a boltban bizonyos értékeket a felhasználó által definiált változó
Állításait Igazolja, a jelenlegi állapotban az alkalmazás várható állami
Beszélve, hogy a típusú Web lokátorral.
Locator egy parancs, amely megmondja szelén IDE mely GUI elemek (mondjuk szövegdoboz, gombok, jelölőnégyzetek, stb) Meg kell működnie. A lokátorok meghatározzák a cselekvési területet.,
Locator by ID: string paramétert vesz igénybe, amely az ID attribútum értéke, amely az objektumot findElement() metódusba adja vissza.
driver. findElement(By.id (“felhasználó”));
lokátor a link szerint: ha a célzott elem linkszöveg, akkor használhatja a by-t.linkText lokátor, hogy keresse meg az elemet.
illesztőprogram.findElement (által.linkText(“mai ajánlatok”).kattintson();
lokátor részleges hivatkozással: a célhivatkozás a szöveg egy részének használatával található meg a link szöveg elemében.
illesztőprogram.findElement (által.linkText (“szolgáltatás”)).,kattintson();
helymeghatározó név szerint: az első elem, amelynek neve attribútum értéke megfelel a helynek, visszatér.
driver. findElement(By.name (“könyvek”). kattintson ());
helymeghatározó által TagName: megkeresi az összes elemet a megfelelő címke neve
illesztőprogram.findElement (által.tagName (“gomb”).kattints ();
helymeghatározó osztálynév szerint: ez az osztály attribútum értéke alapján talál elemeket. Ha egy elemnek sok osztálya van, akkor ez mindegyikhez illeszkedik.
illesztőprogram.findElement (által.,className (“inputtext”));
Locator by XPath: it takes a parameter of String which is a XPATHEXPRESSION and it returns an object to findElement () metódus.
illesztőprogram.findElement (által.xpath (“//span”).getText ();
lokátor CSS választóval: az elemeket a vezető mögöttes CSS választómotorja alapján találja meg.
driver.findElement(by.cssSelector (“input#email”)). sendKeys(“[email protected]”);
milyen típusú várakozásokat támogat a WebDriver?,
Implicit várakozás – Implicit várakozási parancsok szelén várni egy bizonyos ideig, mielőtt dobott egy” nincs ilyen elem ” kivétel.
illesztőprogram.kezelése ().időtúllépések ().implicitlyWait(TimeOut, TimeUnit.Másodperc);
Explicit várakozás-Explicit várakozás arra szolgál, hogy a webes illesztőprogramot bizonyos feltételek megvárására mondja, mielőtt egy “ElementNotVisibleException” kivételt dobna.,
WebDriverWait wait = new WebDriverWait (WebDriver Reference, TimeOut);
Fluent wait – arra szolgál, hogy elmondja a web illesztőprogramnak, hogy várjon egy feltételt, valamint azt a frekvenciát, amellyel ellenőrizni akarjuk az állapotot, mielőtt “ElementNotVisibleException” kivételt dobna.
említse meg a
driver.navigate().to(“https://www.ebay.in/”) navigációs parancsokat; – navigál a megadott URL-re
illesztőprogram.navigálás().frissítés (); – ez a módszer frissíti az aktuális oldalt
illesztőprogram.navigálás().,előre (); – ez a módszer ugyanazt a műveletet hajtja végre, mint bármely böngésző előre gombjára kattintva. Nem fogad el és nem is ad vissza semmit.
illesztőprogram.navigálás().vissza (); – ez a módszer ugyanazt a műveletet hajtja végre, mint bármely böngésző Vissza gombjára kattintva. Nem fogad el és nem is ad vissza semmit.
mi a fő különbség a vezető között.közel () és vezető.kilép()?
driver.Bezárás ()
Ez a parancs bezárja a böngésző aktuális ablakát. Ha több ablak van nyitva, az aktuális fókusz ablak bezáródik.
illesztőprogram.,kilép ()
amikor kilép () az illesztőprogram-példányon, és van egy vagy több böngészőablak nyitva, bezárja az összes nyitott böngészőablakot.
középszintű szelén Interjú kérdések
hogyan írhat be szöveget egy beviteli mezőbe a szelén használatával?
sendKeys () az a módszer, hogy írja be a szöveget a beviteli mezőbe
vegye figyelembe a következő példát –
WebElement email = driver. findElement(By.id (“e-mail”)); – megtalálja az” e-mail ” szöveget az azonosító lokátor segítségével
email. sendKeys(“[email protected]”); – szöveget ír be az URL mezőbe
WebElement password = driver.,findElement(By.id (“jelszó”)); – megtalálja a” jelszó ” szöveget az azonosító lokátor segítségével
jelszó.sendKeys (“abcdefgh123”); – szöveget ír be a jelszó mezőbe
hogyan lehet kattintani egy hiperhivatkozásra a szelénben?
driver.findElement (által.linkText(“mai ajánlatok”).kattintson ();
a parancs az elemet linkszöveg segítségével találja meg, majd rákattint az elemre, ahol a felhasználó átirányítása után a megfelelő oldalra kerül.
illesztőprogram.findElement (által.partialLinkText (“szolgáltatás”)).,kattintson ();
a fenti parancs az elemet a zárójelben megadott link alrésze alapján találja meg, így a partialLinkText() megtalálja a web elemet.
hogyan görgessen le egy oldalt a JavaScript használatával?
scrollBy () módszer segítségével görgessen le a weboldal
általános szintaxis:
executeScript (“ablak.scrollBy (x-Pixel, y-Pixel)”);
először hozzon létre egy JavaScript objektumot
JavascriptExecutor js = (JavascriptExecutor) driver;
indítsa el a kívánt alkalmazást
driver.,get (“https://www.amazon.com”);
Görgessen le a kívánt helyre
js.executeScript (“ablak.scrollBy (0,1000)”);
az ablak nem gördül függőlegesen 1000 pixel
hogyan lehet érvényesíteni a weboldal címét?
Szerezd meg a weboldal címét és tárold a
string actualTitle = driver változóban.getTitle ();
írja be a várható címet
String expectedTitle = “abcdefgh”;
ellenőrizze, hogy mindkettő egyenlő-e
if(actualTitle.equalsIgnoreCase (expectedTitle))
rendszer.kifelé.println (“Title Matched”);
else
rendszer.kifelé.,println (“a cím nem egyezik”);
alternatívaként
Assert.assertEquals (actualTitle, expectedTitle);
hogyan lehet az egeret egy webes elem fölé vinni?
az Actions class segédprogram a Selenium WebDriver
Instantiate Actions osztály webeleme fölé kerül.
Actions action = new Actions (driver);
ebben a forgatókönyvben, mi lebeg a keresőmező egy weboldal
actions.moveToElement (driver. findElement(By.id (“a keresőmező azonosítója”))).,végezze ();
mester fontos vizsgálati fogalmak, mint a TestNG, szelén IDE, szelén rács, szelén WebDriver. Nézze meg a szelén tanúsítási képzést. Jelentkezz most!
hogyan lehet letölteni egy elem CSS tulajdonságait?
getCssValue () módszert használják letölteni CSS tulajdonságait bármely web elem
Általános szintaxis:
driver. findElement(By.id (“id”)). getCssValue (“CSS attribútum neve”);
példa:
driver. findElement(By.id (“e-mail”)). getCssValue (“betűméret”);
mi az a POM (page Object Model)?,
Minden weboldal a kérelmet a megfelelő oldalon osztály, amely felelős a helyüket a web-elemek, műveletek végrehajtása őket. Page Object Model egy tervezési minta, amely segít létrehozni objektum tárolók a webes elemek. A pom javítja a kód újrafelhasználhatóságát és olvashatóságát. Több tesztesetek lehet futtatni az objektum tároló.
automatizálható?
nem, a szelén nem automatizálható ., Az egész koncepció lényege, hogy a botok és az automatizált programok ne férjenek hozzá érzékeny információkhoz – ezért nem lehet automatizálni. Az automatizálási tesztmérnöknek manuálisan kell beírnia, míg más mezők automatikusan kitölthetők.
hogyan kezeli a szelén A Windows alapú előugró ablakokat?
a szelént webes alkalmazások kezelésére tervezték. Windows-alapú funkciók nem natívan támogatja a szelén. Azonban a harmadik féltől származó eszközök, mint az AutoIT, Robot, stb lehet integrálni szelén kezelni pop-up, illetve más Windows-alapú funkciók.,
hogyan készítsünk képernyőképeket a Webdriverben?
TakeScreenshot felület lehet használni, hogy screenshotok WebDriver.
getScreenshotAs () módszer lehet használni, hogy mentse a screenshot
File scrFile = ((TakeScreenshot)driver).getScreenshotAs(outputType.Fájl);
Advanced Level Selenium Interjú kérdések
van egy módja annak, hogy írja be a szövegmezőbe használata nélkül sendKeys()?
Igen! A szöveg beírható egy szövegdobozba a JavaScriptExecutor
JavascriptExecutor jse = (JavascriptExecutor) driver segítségével;
jse.executeScript (“dokumentum.getElementById (‘e-mail’).,érték=”[email protected]”);
Hogyan válasszunk ki egy értéket a Selenium WebDriver legördülő listájából?
válassza ki az osztályt a Webdriverben a Beállítások legördülő menüben történő kiválasztására és törlésére szolgál.
a kiválasztott típusú objektumok inicializálhatók úgy, hogy a legördülő webElement paraméterként átadja a konstruktornak.
WebElement testDrop = driver. findElement(By.id (“testingDropdown”));
Select dropdown = new Select (testDrop);
WebDriver kínál három módon lehet kiválasztani a legördülő:
selectByIndex: kiválasztás alapján index kezdve 0
legördülő.,selectByIndex(5);
selectByValue: kiválasztás érték alapján
legördülő.selectByValue(“Könyvek”);
selectByVisibleText: az opció kiválasztása, amely megjeleníti az adott argumentumnak megfelelő szöveget
legördülő menü.selectByVisibleText(“Az alkimista”);
mit csinál a switchTo() parancs?
a switchTo() parancs az alkalmazáson belüli ablakok, keretek vagy előugró ablakok közötti váltásra szolgál. A WebDriver által instantált minden ablak egyedi alfanumerikus értéket kap, az úgynevezett “Ablakfogantyú”.,
Szerezd meg annak az ablaknak a fogantyúját, amelyre át szeretne váltani
String handle = driver.getWindowHandle ();
váltás a kívánt ablakra
illesztőprogram.switchTo ().ablak (fogantyú);
alternatívaként
for (String handle = driver.getWindowHandles ())
{ driver.switchTo ().ablak (fogantyú);}
hogyan lehet feltölteni egy fájlt a Selenium Webdriverben?
ezt sendkeys() vagy Robot class metódus segítségével érheti el. Keresse meg a szövegmezőt, állítsa be a fájl elérési útját a sendkeys() segítségével, majd kattintson a Küldés gombra
keresse meg a Tallózás gombot
WebElement Tallózás =illesztőprogram.,findElement(By.id (“uploadfile”));
adja át a feltöltendő fájl elérési útját a sendKeys method
Tallózás segítségével.sendKeys(“D:\\SeleniumInterview\\UploadFile.txt”);
hogyan állítsuk be a böngészőablak méretét a szelénben?
az ablak mérete maximalizálható, beállítható vagy átméretezhető
az ablak maximalizálása érdekében
illesztőprogram.kezelése ().ablak ().maximalizálja ();
az ablakméret beállításához
dimenzió d = új dimenzió(400,600);
illesztőprogram.kezelése ().ablak ().setSize (d);
Alternatív megoldásként
az ablak mérete visszaállítható a JavaScriptExecutor
((JavascriptExecutor)illesztőprogram segítségével).,executeScript (“ablak.rezizeto(1024, 768)”);
mikor használjuk a findElement() és findElements () alkalmazást?
findElement () a weboldal bármely elemének elérésére szolgál. Visszaadja a megadott lokátor első megfelelő elemének tárgyát.
általános szintaxis:
WebElement element = driver. findElement(By.id (példa));
findElements () az aktuális weboldal összes elemének megkeresésére szolgál, amely megfelel a megadott lokátorértéknek. Az összes megfelelő elem lekérésre kerül, és a webes elemek listájában tárolódik.,
általános szintaxis:
List <WebElement> elementList = driver. findElements(By.id (példa));
mi a szünet egy kivétel szelén IDE?
a felhasználó ezt a funkciót a kivételek kezelésére használhatja az IDE jobb felső sarkában található szünet ikonra kattintva. Ha a parancsfájl kivételt talál, akkor az adott utasításnál megáll, majd hibakeresési módba lép. A teljes teszt eset nem sikertelen, ezért a felhasználó azonnal kijavíthatja a hibát.,
hogyan lehet bejelentkezni bármely webhelyre, ha a felhasználónév és a jelszó hitelesítési előugró ablakát mutatja?
A hitelesítési előugró ablakok kezeléséhez ellenőrizze annak megjelenését, majd explicit várakozási paranccsal kezelje azokat.
használja az explicit wait parancsot
WebDriverWait wait = new WebDriverWait(driver, 10);
Alert class használják, hogy ellenőrizze a riasztás
Alert alert = wait.amíg (Vártkörülmények között.alertispresent());
miután ellenőrizte, adja meg a hitelesítő adatokat
alert.,hitelesítés(új UserAndPassword(<felhasználónév>, <jelszó>);
mi a különbség az egy-és kettős perjel között a XPath?
egyetlen perjel létrehozásához használt Xpath abszolút útvonal azaz az XPath jön létre, hogy indítsa el a kiválasztás a start csomópont.
/html / body / div / div / div/div/a
kettős perjel létrehozásához használt XPath relatív útvonal azaz., az XPath jön létre, hogy elkezd kiválasztás bárhonnan a dokumentum
/div / a
hogyan találja törött linkek szelén WebDriver?
a driver használatakor.get () módszer navigálni egy URL-t, akkor reagál a status 200-OK
200-OK jelzi, hogy a link működik, és azt kapott. Ha bármilyen más állapotot kapunk, akkor ez azt jelzi, hogy a kapcsolat megszakadt.,
a HTTP állapotkódok némelyike:
- 200 – érvényes Link
- 404 – A Link nem található
- 400-rossz kérés
- 401-jogosulatlan
- 500-Belső hiba
mint indító, szerezze be a linkeket a webes alkalmazásból, majd egyedileg megkapja állapotát.
keresse meg az érdeklődő weboldalt pl. www.amazon.com
Gyűjtse össze az összes linket a weboldalról. Minden link az”a”
List<WebElement> links = driver címkéhez van társítva.findElements(által.,tagName (“a”));
Hozzon létre egy webelement típusú listát az összes Link elem tárolásához.
for(int i=0; i< linkek.méret(); i++) {
WebElement element = linkek.get(i);
String url=elem.getAttribute (“href”);
verifyLink (url);}
most hozzon létre egy kapcsolatot URL objektum( azaz., link)
URL link = új URL(urlLink);
Csatlakozás a Connect Method
HttpURLConnection httpConn = (HttpURLConnection)link segítségével.openConnection ();
használja getResponseCode (), hogy a válasz kód
ha(httpConn.getResponseCode()!,= = 200)
kivétel nélkül, ha bármilyen hiba történt
rendszer.kifelé.println (“Broken Link”);
A következő lépés a sikerhez
miután átnézte ezeket a szelén interjúkérdéseket, megértette volna, milyen kérdéseket lehet feltenni, és hogyan kell válaszolni rájuk.
van egy iparági szakértőnk, aki bizonyos kódrészleteket illusztrál, miközben elmagyarázza, hogyan kell válaszolni a kérdésekre. Ha szeretné, hogy csatlakozzanak az utazás, mint egy teszt automatizálási mérnök, akkor itt van egy tanúsítási tanfolyam, hogy jól jön. Nézze meg Simplilearn szelén képzés., Ez a képzés célja, hogy a vonat a fejlesztők és a kézi tesztelők, hogy megtanulják, hogyan kell automatizálni webes alkalmazások egy robusztus keretrendszer, és integrálja azt a DevOps folyamatok egy szervezet, és segít elsajátítani fontos fogalmak, mint a TestNG, szelén IDE, és szelén rács.