Håndtering af selenundtagelse (liste over almindelige undtagelser)

Indholdsfortegnelse:

Anonim

Hvad er undtagelser?

En undtagelse er en fejl, der sker på tidspunktet for udførelsen af ​​et program. Mens der køres et program, genererer programmeringssprog imidlertid en undtagelse, der skal håndteres for at undgå, at dit program går ned.

Undtagelsen indikerer, at selvom begivenheden kan forekomme, sker denne type begivenhed sjældent. Når metoden ikke er i stand til at håndtere undtagelsen, kastes den til dens opkaldsfunktion. Til sidst, når en undtagelse smides ud af hovedfunktionen, afsluttes programmet brat.

I denne vejledning lærer du:

  • Hvad er undtagelser?
  • Undtagelser i Selenium-driver
  • Håndtering af undtagelser fra selen
  • Metoder til visning af undtagelse

Almindelige undtagelser i Selenium-webdriver

Undtagelsesnavn Beskrivelse
ElementNotVisibleException Denne type Selenium-undtagelse opstår, når et eksisterende element i DOM har et funktionssæt som skjult.
ElementNotSelectableException Denne Selenium-undtagelse opstår, når et element præsenteres i DOM, men du kan være i stand til at vælge. Derfor er det ikke muligt at interagere.
NoSuchElementException Denne undtagelse opstår, hvis et element ikke kunne findes.
NoSuchFrameException Denne undtagelse opstår, hvis det rammemål, der skal skiftes til, ikke findes.
NoAlertPresentException Denne undtagelse opstår, når du skifter til ingen præsenteret alarm.
NoSuchWindowException Denne undtagelse opstår, hvis vinduesmålet, der skal skiftes, ikke findes.
StaleElementReferenceException Denne Selenium-undtagelse opstår, når webelementet er løsrevet fra den aktuelle DOM.
SessionNotFoundException WebDriver handler, når du har lukket browseren.
TimeoutUndtagelse Kastes, når der ikke er tid nok til at udføre en kommando. For eksempel blev det søgte element ikke fundet i det angivne tidspunkt.
WebDriverException Denne undtagelse finder sted, når WebDriver handler lige efter du lukker browseren.
ConnectionClosedException Denne type undtagelse finder sted, når der er en afbrydelse i føreren.
ElementClickInterceptedException Kommandoen afsluttes muligvis ikke, da det element, der modtager begivenhederne, skjuler det element, der blev anmodet om, klikket på.
ElementNotInteractableException Denne Selenium-undtagelse kastes, når ethvert element præsenteres i DOM. Det er imidlertid umuligt at interagere med et sådant element.
ErrorInResponseException Dette sker, når du interagerer med Firefox-udvidelsen eller den eksterne driver-server.
ErrorHandler.UnknownServerException Undtagelse bruges som pladsholder, hvis serveren returnerer en fejl uden stakspor.
ImeActivationFailedException Denne forventning vil opstå, når IME-motoraktivering mislykkes.
ImeNotAvailableException Det finder sted, når IME-support ikke er tilgængelig.
Usikker certifikatundtagelse Navigation fik brugeragenten til at ramme en certifikatadvarsel. Dette kan forårsages af et ugyldigt eller udløbet TLS-certifikat.
InvalidArgumentException Det sker, når et argument ikke hører til den forventede type.
InvalidCookieDomainException Dette sker, når du prøver at tilføje en cookie under et andet domæne i stedet for den aktuelle URL.
InvalidCoordinatesException Denne type undtagelse matcher en interagerende handling, der ikke er gyldig.
InvalidElementStateExceptio Det sker, når kommandoen ikke kan afsluttes, når elementet er ugyldigt.
InvalidSessionIdException Denne undtagelse fandt sted, når det givne session-ID ikke er inkluderet i listen over aktive sessioner. Det betyder, at sessionen heller ikke findes eller er inaktiv.
InvalidSwitchToTargetException Dette sker, når rammen eller vinduesmålet, der skal skiftes, ikke findes.
JavascriptException Dette problem opstår under udførelse af JavaScript fra brugeren.
JsonUndtagelse Det sker, når du har råd til at få sessionen, når sessionen ikke oprettes.
NoSuchAttributeException Denne slags undtagelse opstår, når attributten for et element ikke kunne findes.
MoveTargetOutOfBoundsException Det finder sted, hvis målet, der leveres til ActionChains move () -metoden, ikke er gyldigt. For eksempel ud af dokumentet.
NoSuchContextException ContextAware udfører test af mobilenheder.
NoSuchCookieException Denne undtagelse opstår, når der ikke findes nogen cookie, der matcher det givne stinavn for alle de tilknyttede cookies i det aktuelt gennemsøgte dokument.
NotFoundException Denne undtagelse er en underklasse af WebDriverException. Dette vil ske, når et element på DOM ikke findes.
RemoteDriverServerException Denne Selenium-undtagelse kastes, når serveren ikke reagerer på grund af problemet med, at de beskrevne funktioner ikke er korrekte.
ScreenshotException Det er ikke muligt at fange en skærm.
SessionNotCreatedException Det sker, når en ny session ikke kunne oprettes.
UnableToSetCookieException Dette sker, hvis en driver ikke er i stand til at indstille en cookie.
UnexpectedTagNameException Der sker, hvis en supportklasse ikke fik et webelement som forventet.
UnhandledAlertException Denne forventning opstår, når der er en alarm, men WebDriver er ikke i stand til at udføre Alert-handling.
UnexpectedAlertPresentException Det sker, når der opstår en uventet alarm.
Ukendt metodeundtagelse Denne undtagelse sker, når den anmodede kommando matcher med en kendt URL, men og ikke matcher med en metode til en bestemt URL.
UnreachableBrowserException Denne undtagelse forekommer kun, når browseren af ​​en eller anden grund ikke kan åbnes eller gå ned.
Ikke-understøttet CommandException Dette sker, når ekstern WebDriver ikke sender gyldige kommandoer som forventet.

Håndtering af undtagelser fra selen

Her er nogle vigtige standarder, som du kan håndtere undtagelser i Selenium WebDriver:

Try-catch : Denne metode kan fange undtagelser, som bruger en kombination af forsøg og fangst-nøgleordene. Prøv-kommandoen angiver starten på blokken, og fangsten placeres i slutningen af ​​prøveblokken, hvilket hjælper med at løse undtagelsen.

prøve{// Kode} fangst (undtagelse e) {// Kode til undtagelse af håndtering}
  • Flere fangstblokke : Der er forskellige typer undtagelser, og du kan forvente mere end en undtagelse fra en enkelt kodeblok. Flere fangster hjælper dig med at håndtere alle typer undtagelser separat med en separat kodeblok. Den kan bruges til mere end to fangstblokke, og der er ingen begrænsning for antallet af fangstblokke.
prøve{//Kode} fangst (ExceptionType1 e1) {// Kode til undtagelse af håndtering 1} fangst (ExceptionType2 e2) {// Kode til undtagelse af håndtering 2}
  • Kast : Når du vil generere en undtagelse, bruges nøgleordet til at kaste undtagelse for at håndtere det i løbetiden. Når du kaster en undtagelse uden at håndtere den, skal de bruge kaste nøgleordet.
offentlig statisk ugyldighed anyFunction () kaster undtagelse {prøve {// skriv din kode her} Fangst (undtagelse b) {// Gør hvad du vil udføre// Kast undtagelsen tilbage til systemetkast (b);}}
  • Flere undtagelser : Du kan nævne forskellige undtagelser i kast-klausulen.
offentlig statisk ugyldighed anyFunction () kaster ExceptionType1, ExceptionType2 {prøve {// skriv din kode her} fangst (ExceptionType1 e1) {// Kode til håndtering af undtagelse 1} fangst (ExceptionType1 e2) {// Kode til håndtering af undtagelse 2}
  • Endelig : Det endelige nøgleord bruges til at oprette en blok kode under prøveblokken. Det er den endelige kode, der hjælper dig med at udføre uanset forekomsten af ​​en undtagelse
prøve {//Kode} fangst (ExceptionType1 e1) {// Fangstblok} fangst (ExceptionType2 e2) {// Fangstblok} fangst (ExceptionType3 e3) {// Fangstblok} langt om længe {// Den endelige blok udføres altid.}

Metoder til visning af undtagelse

Du kan også bruge følgende metoder til at vise undtagelsesoplysninger:

  • printStackTrace () : Denne funktion udskriver stakkspor , undtagelsens navn og anden nyttig beskrivelse.
  • toString () : Denne funktion returnerer en tekstbesked, der beskriver undtagelsesnavnet og beskrivelsen.
  • getMessage () : Hjælper med at vise beskrivelsen af ​​undtagelsen.

Resumé:

  • En undtagelse er en fejl, der sker på tidspunktet for udførelsen af ​​et program.
  • Try-catch: Denne metode kan fange undtagelser, som bruger en kombination af forsøg og fangst-nøgleordene.
  • Flere fangster hjælper dig med at håndtere alle typer undtagelser separat med en separat kodeblok.
  • Kast nøgleord bruges til at kaste Undtagelse for at håndtere det i løbetiden.
  • printStackTrace (): Denne funktion udskriver stakkspor, undtagelsens navn og anden nyttig beskrivelse
  • toString (): Denne funktion returnerer en tekstbesked, der beskriver undtagelsesnavnet og beskrivelsen.
  • getMessage (): Hjælper med at vise beskrivelsen af ​​undtagelsen.