Rukovanje iznimkama selena (popis uobičajenih izuzetaka)

Sadržaj:

Anonim

Što su iznimke?

Izuzetak je pogreška koja se događa u vrijeme izvođenja programa. Međutim, dok izvode program, programski jezici generiraju iznimku kojom bi se trebalo rukovati kako bi se izbjeglo rušenje vašeg programa.

Iznimka ukazuje da se, iako se događaj može dogoditi, ova vrsta događaja događa rijetko. Kada se metoda ne može nositi s iznimkom, ona se prebacuje na funkciju pozivatelja. Na kraju, kada se izuzetak izbaci iz glavne funkcije, program se naglo prekida.

U ovom vodiču naučit ćete:

  • Što su iznimke?
  • Iznimke u upravljačkom programu Selenium Web
  • Rukovanje iznimkama selena
  • Metode za prikazivanje iznimke

Uobičajene iznimke u upravljačkom programu Selenium Web

Ime iznimke Opis
ElementNotVisibleException Ova vrsta selenijske iznimke događa se kada postojeći element u DOM-u ima postavljenu značajku kao skrivenu.
ElementNotSelectableException Ova iznimka selena događa se kada je element predstavljen u DOM-u, ali možete biti u mogućnosti odabrati. Stoga nije moguće komunicirati.
NoSuchElementException Ova se iznimka događa ako element nije moguće pronaći.
NoSuchFrameException Ova se iznimka događa ako cilj okvira na koji se treba prebaciti ne postoji.
NoAlertPresentException Ova se iznimka događa kada se prebacite na nijedno upozorenje.
NoSuchWindowException Ova se iznimka događa ako cilj prozora koji treba prebaciti ne postoji.
StaleElementReferenceException Ova iznimka selena događa se kada se web element odvoji od trenutnog DOM-a.
SessionNotFoundException WebDriver djeluje nakon što izađete iz preglednika.
TimeoutException Bačen kad nema dovoljno vremena za izvršavanje naredbe. Na primjer, pretraženi element nije pronađen u navedenom vremenu.
WebDriverException Ova se iznimka događa kada WebDriver djeluje odmah nakon zatvaranja preglednika.
ConnectionClosedException Ova vrsta iznimke događa se kada postoji prekid veze u upravljačkom programu.
ElementClickInterceptedException Naredba se možda neće dovršiti jer element koji prima događaje prikriva element na koji je zatražen klik.
ElementNotInteractableException Ova izuzetak selena baca se kada je bilo koji element predstavljen u DOM-u. Međutim, nemoguće je komunicirati s takvim elementom.
ErrorInResponseException To se događa tijekom interakcije s Firefoxovim proširenjem ili udaljenim poslužiteljem upravljačkih programa.
ErrorHandler.UnknownServerException Iznimka se koristi kao rezervirano mjesto u slučaju ako poslužitelj vrati pogrešku bez traga stoga.
ImeActivationFailedException Ovo će se očekivanje dogoditi kada aktiviranje IME motora ne uspije.
ImeNotAvailableException Događa se kad IME podrška nije dostupna.
InsecureCertificateException Navigacija je učinila da korisnički agent pogodi upozorenje o certifikatu. To može uzrokovati nevažeći ili istekao TLS certifikat.
NevažećeArgumentException Pojavljuje se kada argument ne pripada očekivanom tipu.
InvalidCookieDomainException To se događa kada pokušate dodati kolačić pod drugu domenu umjesto trenutnog URL-a.
InvalidCoordinatesException Ova vrsta iznimke podudara se s operacijom koja nije valjana.
InvalidElementStateExceptio To se događa kada naredba ne može biti gotova kada je element nevaljan.
InvalidSessionIdException Ova se iznimka dogodila kada zadani ID sesije nije uključen na popis aktivnih sesija. To znači da sesija ne postoji ili je neaktivna.
InvalidSwitchToTargetException To se događa kada okvir ili prozor cilja koji treba prebaciti ne postoji.
JavascriptException Do ovog problema dolazi tijekom izvršavanja JavaScript-a koji je dao korisnik.
JsonException To se događa kada si priuštite da dobijete sesiju kada sesija nije kreirana.
NoSuchAttributeException Ova vrsta iznimke događa se kada atribut elementa nije moguće pronaći.
MoveTargetOutOfBoundsException Događa se ako cilj naveden u metodologiji ActionChains move () nije valjan. Na primjer, izvan dokumenta.
NoSuchContextException ContextAware vrši testiranje mobilnih uređaja.
NoSuchCookieException Ova se iznimka događa kada nije pronađen nijedan kolačić koji se podudara s danim imenom putanje za sve povezane kolačiće dokumenta trenutno pregledavanja.
NotFoundException Ova je iznimka podrazred WebDriverException. To će se dogoditi kada element na DOM-u ne postoji.
RemoteDriverServerException Ova se izuzetak selena baca kada poslužitelj ne reagira zbog problema s tim što opisane mogućnosti nisu ispravne.
Iznimka zaslona Nije moguće snimiti zaslon.
SessionNotCreatedException To se događa kada se novu sesiju nije moglo uspješno stvoriti.
UnableToSetCookieException To se događa ako vozač nije u mogućnosti postaviti kolačić.
UnexpectedTagNameException Događa se ako klasa podrške nije dobila web element kako se očekivalo.
UnhandledAlertException Ovo se očekivanje događa kada postoji upozorenje, ali WebDriver ne može izvršiti operaciju upozorenja.
UnexpectedAlertPresentException Pojavljuje se kada se pojavi neočekivano upozorenje.
UnknownMethodException Ova se iznimka događa kada se tražena naredba podudara s poznatim URL-om, ali se ne podudara s metodologijom za određeni URL.
UnreachableBrowserException Ova se iznimka događa samo kada se preglednik iz nekog razloga ne može otvoriti ili srušiti.
UnsupportedCommandException To se događa kada udaljeni WebDriver ne šalje valjane naredbe kako se očekivalo.

Rukovanje iznimkama selena

Evo nekoliko važnih standarda pomoću kojih se možete nositi s iznimkama u programu Selenium WebDriver:

Try-catch : Ova metoda može uhvatiti iznimke, koja koristi kombinaciju ključnih riječi try and catch. Naredba try označava početak bloka, a Catch se postavlja na kraj bloka try, što pomaže u rješavanju iznimke.

probati{// Šifra} catch (Iznimka e) {// Kôd za rukovanje iznimkom}
  • Više blokova ulova : Postoje razne vrste iznimki i možete očekivati ​​više od jedne iznimke od jednog bloka koda. Višestruki hvatači pomažu vam da obrađujete svaku vrstu iznimke zasebno s zasebnim blokom koda. Može se koristiti za više od dva bloka ulova i nema ograničenja u broju blokova ulova.
probati{//Kodirati} catch (ExceptionType1 e1) {// Kôd za rukovanje iznimkom 1} catch (ExceptionType2 e2) {// Kôd za rukovanje iznimkom 2}
  • Bacanje : Kada želite generirati iznimku, ključna riječ Throw koristi se za bacanje iznimke kako bi se njome rukovalo u vremenu izvođenja. Kada bacate Iznimku bez da se njome rukujete, tada trebaju koristiti ključnu riječ Throw.
javna statička void anyFunction () baca iznimku {probaj {// ovdje napišite svoj kod} Ulov (izuzetak b) {// Radi sve što želiš izvesti// Vratite iznimku natrag u sustavbaciti (b);}}
  • Višestruke iznimke : U klauzuli o bacanju možete spomenuti razne iznimke.
javna statička void anyFunction () baca ExceptionType1, ExceptionType2 {probaj {// ovdje napišite svoj kod} catch (ExceptionType1 e1) {// Kôd za obradu iznimke 1} catch (ExceptionType1 e2) {// Kôd za obradu iznimke 2}
  • Konačno : Ključna riječ Final koristi se za stvaranje bloka koda ispod bloka try. Konačni je kôd koji vam pomaže izvršiti bez obzira na pojavu iznimke
probaj {//Kodirati} catch (ExceptionType1 e1) {// Blok ulova} catch (ExceptionType2 e2) {// Blok ulova} catch (ExceptionType3 e3) {// Blok ulova} napokon {// Konačni blok se uvijek izvršava.}

Metode za prikazivanje iznimke

Također možete koristiti sljedeće metode za prikaz podataka o iznimkama:

  • printStackTrace () : Ova funkcija ispisuje trag steka, naziv iznimke i drugi koristan opis.
  • toString () : Ova funkcija vraća tekstualnu poruku koja opisuje naziv i opis iznimke.
  • getMessage () : Pomaže u prikazivanju opisa iznimke.

Sažetak:

  • Iznimka je pogreška koja se dogodi u vrijeme izvršavanja programa.
  • Try-catch: Ova metoda može uhvatiti iznimke, koja koristi kombinaciju ključnih riječi try and catch.
  • Višestruki hvatači pomažu vam da obrađujete svaku vrstu iznimke zasebno s zasebnim blokom koda.
  • Ključna riječ Throw koristi se za bacanje Exceptiona kako bi se njome rukovalo u vremenu izvođenja.
  • printStackTrace (): Ova funkcija ispisuje trag steka, naziv iznimke i drugi koristan opis
  • toString (): Ova funkcija vraća tekstualnu poruku koja opisuje naziv i opis iznimke.
  • getMessage (): Pomaže u prikazivanju opisa iznimke.