Szelén kivételek kezelése (Általános kivételek listája)

Tartalomjegyzék:

Anonim

Mi az a kivétel?

Kivételt képez egy hiba, amely a program futtatásakor történik. A program futtatása közben azonban a programozási nyelvek kivételt generálnak, amelyet kezelni kell, hogy elkerüljék a program összeomlását.

A kivétel azt jelzi, hogy bár az esemény előfordulhat, ez a fajta esemény ritkán fordul elő. Ha a metódus nem képes kezelni a Kivételt, akkor a hívófunkcióra kerül. Végül, ha egy kivétel kivetésre kerül a fő funkcióból, a program hirtelen leáll.

Ebben az oktatóanyagban megtudhatja:

  • Mi az a kivétel?
  • Kivételek a Selenium web-illesztőprogramban
  • A szelén kivételek kezelése
  • A kivétel megjelenítésének módszerei

Gyakori kivételek a szelén web-illesztőprogramban

Kivétel neve Leírás
ElementNotVisibleException Ez a fajta szelén-kivétel akkor fordul elő, amikor a DOM egy meglévő elemének rejtettként van beállítva egy szolgáltatása.
ElementNotSelectableException Ez a szelén kivétel akkor fordul elő, amikor egy elem megjelenik a DOM-ban, de kiválaszthatja. Ezért nem lehet kölcsönhatásba lépni.
NoSuchElementException Ez a kivétel akkor fordul elő, ha egy elem nem található.
NoSuchFrameException Ez a kivétel akkor fordul elő, ha az átváltandó keretcél nem létezik.
NoAlertPresentException Ez a kivétel akkor fordul elő, ha át nem váltott riasztásra vált.
NoSuchWindowException Ez a kivétel akkor fordul elő, ha a kapcsoló ablakcélja nem létezik.
StaleElementReferenceException Ez a szelén kivétel akkor fordul elő, amikor a webelem leválik az aktuális DOM-ról.
SessionNotFoundException A WebDriver a böngészőből való kilépés után jár.
TimeoutException Akkor dobják, amikor nincs elég idő egy parancs végrehajtásához. Például a keresett elem nem található a megadott idő alatt.
WebDriverException Ez a kivétel akkor következik be, amikor a WebDriver közvetlenül a böngésző bezárása után jár.
ConnectionClosedException Ez a típusú kivétel akkor történik, amikor az illesztőprogram megszakad.
ElementClickInterceptedException Előfordulhat, hogy a parancs nem fejeződik be, mivel az eseményeket fogadó elem elrejti a kért elemet.
ElementNotInteractableException Ezt a szelén kivételt akkor dobja el, ha bármely elem megjelenik a DOM-ban. Lehetetlen azonban kölcsönhatásba lépni egy ilyen elemmel.
ErrorInResponseException Ez akkor történik, amikor interakcióba lép a Firefox kiterjesztéssel vagy a távoli illesztőprogram-kiszolgálóval.
ErrorHandler.UnknownServerException Kivételt használnak helyőrzőként abban az esetben, ha a szerver hibát ad vissza verem nyomkövetése nélkül.
ImeActivationFailedException Ez az elvárás akkor fog bekövetkezni, amikor az IME motor aktiválása sikertelen volt.
ImeNotAvailableException Akkor történik, amikor az IME támogatás nem érhető el.
InsecureCertificateException A navigáció arra késztette a felhasználói ügynököt, hogy elérje a tanúsítványra vonatkozó figyelmeztetést. Ezt érvénytelen vagy lejárt TLS-tanúsítvány okozhatja.
InvalidArgumentException Akkor fordul elő, ha egy argumentum nem tartozik a várt típusba.
InvalidCookieDomainException Ez akkor történik, amikor egy cookie-t próbál meg egy másik domain alá felvenni az aktuális URL helyett.
InvalidCoordinatesException Ez a típusú kivétel megfelel egy kölcsönhatásban lévő műveletnek, amely nem érvényes.
InvalidElementStateExceptio Akkor fordul elő, amikor a parancs nem fejezhető be, ha az elem érvénytelen.
InvalidSessionIdException Erre a kivételre akkor került sor, amikor a megadott munkamenet-azonosító nem szerepel az aktív munkamenetek listájában. Ez azt jelenti, hogy a munkamenet sem létezik, vagy inaktív.
InvalidSwitchToTargetException Ez akkor fordul elő, amikor a kapcsolandó keret vagy ablak cél nem létezik.
JavascriptException Ez a probléma a felhasználó által adott JavaScript futtatása közben jelentkezik.
JsonException Akkor fordul elő, amikor megengedi magának a munkamenetet, amikor a munkamenet nincs létrehozva.
NoSuchAttributeException Ez a fajta kivétel akkor fordul elő, amikor egy elem attribútuma nem található.
MoveTargetOutOfBoundsException Erre akkor kerül sor, ha az ActionChains move () módszertanhoz megadott cél érvénytelen. Például, ki a dokumentumból.
NoSuchContextException A ContextAware elvégzi a mobileszközök tesztelését.
NoSuchCookieException Ez a kivétel akkor fordul elő, ha az aktuálisan böngésző dokumentum összes társított cookie-jához nem található a megadott útvonalnévnek megfelelő cookie.
NotFoundException Ez a kivétel a WebDriverException egyik alosztálya. Ez akkor fordul elő, ha a DOM-on nem létezik elem.
RemoteDriverServerException Ezt a szelén kivételt akkor dobja el, ha a kiszolgáló nem válaszol a probléma miatt, hogy a leírt képességek nem megfelelőek.
ScreenshotException Képernyőt nem lehet rögzíteni.
SessionNotCreatedException Akkor történik, amikor egy új munkamenetet nem sikerült sikeresen létrehozni.
UnableToSetCookieException Ez akkor fordul elő, ha az illesztőprogram nem tudja beállítani a cookie-kat.
UnexpectedTagNameException Akkor történik, ha egy támogató osztály nem kapott webelementet a várakozásoknak megfelelően.
UnhandledAlertException Ez az elvárás akkor fordul elő, ha riasztás van, de a WebDriver nem képes riasztási művelet végrehajtására.
UnexpectedAlertPresentException Akkor fordul elő, ha váratlan riasztás jelenik meg.
UnknownMethodException Ez a kivétel akkor következik be, amikor a kért parancs megfelel egy ismert URL-nek, de nem egyezik meg egy adott URL módszertanával.
UnreachableBrowserException Ez a kivétel csak akkor fordul elő, ha a böngészőt valamilyen okból nem lehet megnyitni vagy összeomlani.
UnsupportedCommandException Ez akkor fordul elő, amikor a távoli WebDriver nem a várt módon küldi el az érvényes parancsokat.

A szelén kivételek kezelése

Íme néhány fontos szabvány, amellyel kezelheti a kivételeket a Selenium WebDriver programban:

Try-catch : Ez a módszer megragadhatja a kivételeket, amely a try and catch kulcsszavak kombinációját használja. A Try parancs a blokk kezdetét jelzi, a Catch pedig a try blokk végére kerül, ami segít megoldani a Kivételt.

próbáld ki{// Kód} fogás (e kivétel) {// Kezelés kódja kivétel}
  • Több elkapási blokk : Különböző típusú kivételek léteznek, és egyetlen kódblokktól több kivételt is elvárhat. A többszörös elkapás segít a kivétel minden típusának külön kezelésében, külön kódblokkal. Kétnél több elkapási blokknál használható, a fogási blokkok számát illetően nincs korlátozás.
próbáld ki{//Kód} catch (ExceptionType1 e1) {// Az 1. kivétel kezelésének kódja} catch (ExceptionType2 e2) {// A 2. kivétel kezelésének kódja}
  • Dobás : Ha kivételt akar létrehozni, akkor a Dobás kulcsszóval dobja a Kivételt, hogy kezelje azt a futási időben. Amikor kivételt dobsz anélkül, hogy kezelnéd, akkor nekik kell használniuk a Throw kulcsszót.
public static void anyFunction () dobja a Kivételt {próbáld ki {// írja ide a kódját} Fogás (b kivétel) {// Tedd meg, amit csak akarsz// Dobja vissza a Kivételt a rendszerbedobás (b);}}
  • Több kivétel : Különböző kivételeket említhet a dobási záradékban.
public static void anyFunction () dobja az ExceptionType1, ExceptionType2 {próbáld ki {// írja ide a kódját} catch (ExceptionType1 e1) {// Az 1. kivétel kezeléséhez szükséges kód} catch (ExceptionType1 e2) {// Kód a 2. kivétel kezeléséhez}
  • Végül : A Végső kulcsszó segítségével létrehozhatunk egy blokkot a try blokk alatt. Ez a végső kód, amely segít a végrehajtásban, függetlenül a kivétel előfordulásától
próbáld ki {//Kód} catch (ExceptionType1 e1) {// Fogási blokk} catch (ExceptionType2 e2) {// Fogási blokk} catch (ExceptionType3 e3) {// Fogási blokk} végül {// Az utolsó blokk mindig végrehajtódik.}

A kivétel megjelenítésének módszerei

A kiviteli információk megjelenítéséhez a következő módszereket is használhatja:

  • printStackTrace () : Ez a függvény kinyomtatja a verem nyomát, a Kivétel nevét és egyéb hasznos leírást.
  • toString () : Ez a függvény egy szöveges üzenetet ad vissza, amely leírja a kivétel nevét és leírását.
  • getMessage () : Segít megjeleníteni a Kivétel leírását.

Összegzés:

  • Kivételt képez egy hiba, amely a program futtatásakor történik.
  • Try-catch: Ez a módszer megragadhatja a kivételeket, amely a try and catch kulcsszavak kombinációját használja.
  • A többszörös elkapás segít a kivétel minden típusának külön kezelésében, külön kódblokkal.
  • A Throw kulcsszót használjuk a Exception feldobására, hogy kezeljük azt a futási időben.
  • printStackTrace (): Ez a függvény kinyomtatja a verem nyomát, a Kivétel nevét és egyéb hasznos leírást
  • toString (): Ez a függvény egy szöveges üzenetet ad vissza, amely leírja a kivétel nevét és leírását.
  • getMessage (): Segít megjeleníteni a Kivétel leírását.