A szoftveralkalmazások különböző fázisokon mennek keresztül, mielőtt a végfelhasználó rendelkezésére bocsátják őket.
A tesztelés az SDLC (Szoftverfejlesztési életciklus) legfontosabb része, mivel azonosítja a hibákat, és ellenőrzi, hogy az alkalmazás a várt módon működik-e.
A múltban a szoftvertesztelők kézi tesztelési technikákat használtak. A kézi tesztelés azonban időigényes, és más kihívásokkal is jár. A szelént a szoftvertesztelés automatizálására hozták létre.
A Selenium jelenleg piacvezető, és a legtöbb szoftvertesztelő már használja is. Ha szoftvertesztelőként szeretne elhelyezkedni, a szelénes interjúk gyakori kérdéseivel felvértezve versenyelőnyt biztosít a többi álláskeresővel szemben.
A következő kérdések és válaszok a szelén interjúról, amelyekkel valószínűleg találkozni fog:
Tartalomjegyzék
Mi az az automatizálási tesztelés?
Egyszerűen fogalmazva, az automatizálási tesztelés a szoftvertesztek írási és végrehajtási folyamatának automatizálása egy Automated Test Suite használatával vagy manuális közreműködés nélkül. Az automatizálási tesztelés lehetővé teszi a tesztelők számára, hogy külön eszközt használjanak a tesztfeladatok ismételt végrehajtására.
Milyen előnyei vannak az automatizálási tesztelésnek?
- Időt és pénzt takarít meg. A szoftvertesztelés költséges lehet, ha manuális tesztelőket kell fizetnie. Az automatizált tesztelés hosszú távon olcsóbb lehet.
- Elősegíti a kód újrafelhasználhatóságát. A teszteket egyszer beállíthatja, és a végrehajtás ismételten megtörténik.
- Csökkenti az ember által generált hibákat, javítja a pontosságot.
- Tökéletes nagyméretű alkalmazásokhoz. Egy kis alkalmazás tesztelése egyszerű kézi teszteléssel. Az alkalmazás méretezésekor azonban egy automatizált tesztelőkészlet hasznos lesz az alkalmazás méretezésekor.
Mi az a szelén?
A Selenium egy nyílt forráskódú és ingyenes webes felhasználói felület alapú automatizálási tesztelési csomag, amelyet Jason Huggins 2004-ben fejlesztett ki. Az erős közösség jelenléte a Seleniumot az egyik legnépszerűbb automatizált szoftverteszt-csomaggá tette. A Selenium Suite-ot különféle böngészők és platformok támogatják.
Melyek a szelén különböző formái?
A szelén nem csak egy tesztelőeszköz, hanem számos eszköz sorozata. Az alábbiakban a szelén különböző formáit mutatjuk be;
- Selenium Integrated Development Environment (IDE)
- Szelén WebDriver
- Szelén távirányító (RC)
- Szelén rács
Mely programozási nyelveket támogatja a Selenium?
- Piton
- Jáva
- C-Sharp
- JavaScript
- Rubin
- PHP
- Perl
Mely teszttípusokat támogatja a Selenium?
Mi az a Selenium WebDriver?
A Selenium WebDriver feladata a webböngészőkkel való kommunikáció. Ez az eszköz natív kompatibilitására is támaszkodik a különféle feladatok automatizálásához.
Mi az a Selenium IDE?
A Selenium IDE egy Firefox beépülő modul, amely rögzítési és lejátszási eszközként működik. Ezt a bővítményt az automatizálási szkriptek létrehozásának felgyorsítására hozták létre.
Mi az a szelénrács?
Ez az eszköz lehetővé teszi a felhasználók számára, hogy a tesztvégrehajtást egyszerre több környezetre és platformra terjeszthessék.
Mi az a szelén RC (távirányító)?
Az RC egy olyan eszköz, amely lehetővé teszi, hogy valaki tesztszkripteket hozzon létre a kívánt programozási nyelven. Ez az eszköz lehetővé teszi a felhasználók számára, hogy tesztszkripteket hajtsanak végre a böngészők széles skáláján.
Mit jelent a Selenese?
A Selenium IDE-nek van egy Selenese nevű nyelve, amelyet a Selenium parancsok írásához használnak. Ezek a parancsok segítenek a Seleniumnak megérteni, milyen műveleteket kell végrehajtani.
Melyek a szelén fajtái?
- Akciók. Ezek olyan parancsok, amelyek módosítják az alkalmazás állapotát. Az „Írja be ezt a mezőt” és a „kattintson erre a hivatkozásra” példák a műveletekre.
- Kiegészítők. Ezek parancsolják az alkalmazás állapotát, és az eredményeket változókban tárolják.
- Állítások. Ezek olyan parancsok, amelyek lehetővé teszik a tesztelő számára az alkalmazás állapotának ellenőrzését.
Milyen módszerekkel lehet meghatározni egy elemet a szelénben?
- ID
- Osztály név
- Név
- Címkenév
- LinkText
- PartialLinkText
- Xpath
- CSS-választó
- DOM
Mi az XPath?
Az XPath az Extensible Markup Language elérési útja alapján keres egy webelemet. Az XML tetszőleges adatokat tárol és szállít.
„/” és „//” az XPathban. Mi a különbség?
A „/” vagy az egyetlen perjel abszolút elérési úttal rendelkező XPath-ot hoz létre. Így az XPath úgy jön létre, hogy a kijelölést a kezdő csomópontból/dokumentum csomópontból indítsa el.
A „//” vagy a dupla perjel relatív elérési úttal rendelkező XPath létrehozására szolgál. Így a létrehozott XPath a dokumentumon belül bárhonnan elindítja a kijelölést.
Mi az Absolute XPath?
Az abszolút XPath egyetlen perjel „/”-vel kezdődik. Egy ilyen útvonalnak teljes elérési útja van a gyökértől az azonosítani kívánt elemig.
Különbség a findElement() és a findElements() között
- findElements(): a megadott helymeghatározási mechanizmus segítségével megkeresi az összes elemet az aktuális oldalon, és visszaadja az összes webes elem listáját.
- findElement(): megkeresi az első elemet az aktuális oldalon a megadott helymeghatározási mechanizmus segítségével, és csak egyetlen webelemet ad vissza.
Milyen típusú megjegyzéseket használnak a szelénben?
- BeforeSuite
- Teszt előtt
- Óra előtt
- BeforeMethod
- Próbaper
- AfterMethod
- Óra után
- Utánteszt
- AfterSuite
Mik azok az állítások a szelénben?
Az állítások határozzák meg, hogy az alkalmazás a várt módon működik-e. Ha az állítások sikertelenek, a teszteset meghiúsul, és a végrehajtás leáll.
Mik azok az Assert és Verify parancsok?
- Assert: ha az assert feltételek igazak, a program folytatja a következő tesztlépés végrehajtását. Ha azonban a feltétel hamis, a végrehajtás leáll, és nem történik más teszt.
- Ellenőrzés: A teszt végrehajtása folytatódik, függetlenül attól, hogy az ellenőrzött feltétel igaz vagy hamis.
Mi az azonos eredetű politika, és hogyan kezeli a szelén?
Az azonos eredetű házirend olyan biztonsági mechanizmusként írható le, amely korlátozza, hogy egy adott forrás által betöltött szkript vagy dokumentum hogyan kommunikáljon egy másik forrásból származó erőforrással. Ez a megközelítés segít a rosszindulatú szkriptek elkülönítésében.
A Selenium proxy-injekciós módszert használ az azonos származási irányelv megvalósításához. Ebben a beállításban a Selenium Server kliens által konfigurált HTTP-proxyként működik a tesztelt alkalmazás és a böngésző között. Ez a proxy injekció egy kitalált URL-címen keresztül maszkolja az AUT-t.
Mi a szünet funkció a Selenium IDE-ben?
A Szünet egy várakozási Selenium IDE parancs, amely meghatározott ideig késlelteti az automatizált tesztelés végrehajtását. A várakozás ezredmásodpercben van jelölve, ami azt jelenti, hogy 3000-et kell megadnia, ha 3 másodpercet szeretne várni.
Miért nem sikerülnek a szelén IDE tesztek?
- Aszinkron weboldalak. A szeléntesztek meghatározott sorrendben készülnek. Egyes webhelyek azonban aszinkron architektúrán alapulnak, és néha a válaszok nem megfelelőek.
- Időtúllépések. A szelén meghibásodhat, miközben vár egy komponens betöltésére. Az ilyen hibák a „várakozás” segítségével kezelhetők.
- Bugs. A szelént folyamatosan javítják. Időnként azonban találkozhat hibákkal, amelyek a tesztek sikertelenségét okozhatják.
- Kis változtatások a forráskódon. Ha egy helymeghatározó módosítását bejelöli, az erre a lokátorra irányuló összes teszt sikertelen lehet.
Mi az a TestNG, és milyen jellemzői vannak?
A TestNG egy tesztautomatizálási keretrendszer, amelyet a JUnit és a NUnit ihletett. Az NG, a Next Generation, egy nyílt forráskódú és ingyenes eszköz.
Ez a TestNG néhány szolgáltatása;
- Különböző típusú állításai vannak.
- Lehetővé teszi a felhasználók számára a tesztek párhuzamos futtatását.
- A teszteket egymástól függővé teheti a „dependsOnMethods” és a „dependsOnGroups” attribútumok használatával.
- Adatvezérelt teszteket végez.
- Különféle teszteket csoportosíthat.
Mi a különbség az implicit várakozás és az explicit várakozás között?
- Az implicit várakozás azt mondja a WebDrivernek, hogy várjon egy bizonyos ideig, mielőtt kivételt dobna. Az alapértelmezett érték 0, és az idő beállítása után a WebDriver megvárja, amíg lejár, és kivételt dob.
- Az Explicit Wait azt mondja a WebDrivernek, hogy várjon bizonyos feltételekre vagy ExpectedConditionsre, mielőtt „ElementNotVisibleException” kivételt dobna. Az explicit várakozás egy „intelligens” várakozás, amely csak meghatározott elemekre vonatkozik.
Mi az objektumtár?
Az Object Repository kulcs-érték párok gyűjteménye egy automatizált grafikus felhasználói felület tesztszkriptjében, amely könnyíti a tesztszkript karbantartásának terheit. Ebben az esetben a kulcs egy logikai név, amely azonosítja az objektumokat, valamint olyan értékek, amelyek egyedi tulajdonságokkal rendelkeznek, amelyek azonosítják az objektumokat a képernyőn.
Ez egy központi hely is, ahol minden adatot tárolnak és kezelnek.
Milyen kivételekkel találkozhat a Selenium webillesztőprogramban?
Kivételt képez egy példa nélküli vagy szokatlan esemény, amely a program vagy a szoftveralkalmazás végrehajtása során fordulhat elő. Leírható egy váratlan esemény vagy eredmény futásidejű hibájaként is, amely megzavarja vagy befolyásolja a szokásos programfolyamatot.
Ezek a fő kivételek a Selenium Web Driverben;
- NoSuchWindowException. A WebDriver érvénytelen (nem elérhető) ablakra próbál váltani.
- NoSuchElementException. Akkor fordul elő, ha egy elem nem érhető el.
- NoAlertPresentException. Ez a kivétel akkor fordul elő, amikor megpróbál átváltani a nincs megjelenített riasztásra.
- TimeoutException. Az adott parancs nem fejeződött be a megadott időn belül.
- ElementNotVissibleException.
- ElementNotSelectableException. Ilyen kivétel akkor fordul elő, ha egy elem le van tiltva (nem lehet kiválasztani vagy rákattintani), annak ellenére, hogy elérhető a DOM-on.
- SessionNotFoundException. A WebDriver ebben az esetben a böngésző bezárása után azonnal működik.
Sorolja fel a különböző típusú lokátorokat
- Id
- Név
- osztály név
- tagName
- linkText
- részlegesLinkText
- CSS-választó
- XPath
Mik azok a töréspontok és kezdőpontok?
- A kezdőpontok azt mutatják, hogy a kód végrehajtásának hol kell kezdődnie. A kezdőpontok használhatók tesztszkript futtatására a kód közepétől vagy a törésponttól.
- A töréspontok a kódvégrehajtás leállítására szolgálnak. A rendszer egy töréspontot használ annak ellenőrzésére, hogy a kód megfelelően működik-e.
Becsomagolás
Fent található néhány szelén interjúkérdés, amellyel valószínűleg találkozni fog a következő tesztautomatizálási mérnöki állásinterjún. Győződjön meg arról, hogy rendelkezik a szükséges készségekkel, mielőtt tesztautomatizálási mérnöki pozícióra jelentkezne.
Élvezettel olvasta a cikket? Mit szólnál a világgal való megosztáshoz?