Selen unntakshåndtering (liste over vanlige unntak)

Innholdsfortegnelse:

Anonim

Hva er unntak?

Et unntak er en feil som oppstår på tidspunktet for utførelsen av et program. Mens du kjører et program, genererer programmeringsspråk imidlertid et unntak som bør håndteres for å unngå at programmet krasjer.

Unntaket indikerer at denne hendelsen skjer sjelden, selv om hendelsen kan inntreffe. Når metoden ikke er i stand til å håndtere unntaket, blir den kastet til anropsfunksjonen. Til slutt, når et unntak blir kastet ut av hovedfunksjonen, avsluttes programmet brått.

I denne opplæringen lærer du:

  • Hva er unntak?
  • Unntak i Selenium-driver
  • Håndtering av unntak av selen
  • Metoder for visning av unntak

Vanlige unntak i Selenium-driver

Unntak navn Beskrivelse
ElementNotVisibleException Denne typen Selenium-unntak oppstår når et eksisterende element i DOM har et funksjonssett som skjult.
ElementNotSelectableException Dette Selen-unntaket oppstår når et element presenteres i DOM, men du kan være i stand til å velge. Derfor er det ikke mulig å samhandle.
NoSuchElementException Dette unntaket oppstår hvis et element ikke ble funnet.
NoSuchFrameException Dette unntaket oppstår hvis rammemålet som skal byttes til ikke eksisterer.
NoAlertPresentException Dette unntaket oppstår når du bytter til ingen presentert varsel.
NoSuchWindowException Dette unntaket oppstår hvis vindusmålet som skal byttes ikke eksisterer.
StaleElementReferenceException Dette Selen-unntaket oppstår skjer når webelementet er løsrevet fra den nåværende DOM.
SessionNotFoundException WebDriver handler når du avslutter nettleseren.
TimeoutException Kastes når det ikke er nok tid til å fullføre en kommando. For eksempel ble elementet som ble søkt ikke funnet i den angitte tiden.
WebDriverException Dette unntaket finner sted når WebDriver handler rett etter at du har lukket nettleseren.
ConnectionClosedException Denne typen unntak finner sted når det er frakobling i sjåføren.
ElementClickInterceptedException Kommandoen kan ikke fullføres da elementet som mottar hendelsene skjuler elementet som ble bedt om, klikket på.
ElementNotInteractableException Dette Selen-unntaket kastes når noe element presenteres i DOM. Det er imidlertid umulig å samhandle med et slikt element.
ErrorInResponseException Dette skjer mens du kommuniserer med Firefox-utvidelsen eller den eksterne driver-serveren.
ErrorHandler.UnknownServerException Unntak brukes som plassholder i tilfelle hvis serveren returnerer en feil uten stabelspor.
ImeActivationFailedException Denne forventningen vil oppstå når IME-motoraktivering mislyktes.
ImeNotAvailableException Det skjer når IME-støtte ikke er tilgjengelig.
Usikker sertifisering unntak Navigasjon fikk brukeragenten til å treffe en sertifikatadvarsel. Dette kan skyldes et ugyldig eller utløpt TLS-sertifikat.
InvalidArgumentException Det oppstår når et argument ikke tilhører den forventede typen.
InvalidCookieDomainException Dette skjer når du prøver å legge til en informasjonskapsel under et annet domene i stedet for gjeldende URL.
InvalidCoordinatesException Denne typen unntak samsvarer med en samhandlende operasjon som ikke er gyldig.
InvalidElementStateExceptio Det oppstår når kommandoen ikke kan fullføres når elementet er ugyldig.
InvalidSessionIdException Dette unntaket fant sted når den gitte økt-IDen ikke er inkludert i listen over aktive økter. Det betyr at økten ikke eksisterer eller er inaktiv heller.
InvalidSwitchToTargetException Dette skjer når rammen eller vindusmålet som skal byttes ikke eksisterer.
JavascriptException Dette problemet oppstår mens JavaScript kjøres av brukeren.
Json unntak Det oppstår når du har råd til å få økten når økten ikke er opprettet.
NoSuchAttributeException Denne typen unntak oppstår når attributtet til et element ikke ble funnet.
MoveTargetOutOfBoundsException Det finner sted hvis målet som er gitt til ActionChains move () -metoden ikke er gyldig. For eksempel ut av dokumentet.
NoSuchContextException ContextAware utfører mobile enheter.
NoSuchCookieException Dette unntaket oppstår når ingen informasjonskapsler som samsvarer med det gitte stienavnet, ble funnet for alle de tilknyttede informasjonskapslene i det aktuelle dokumentet.
NotFoundException Dette unntaket er en underklasse av WebDriverException. Dette vil skje når et element på DOM ikke eksisterer.
RemoteDriverServerException Dette Selen-unntaket blir kastet når serveren ikke svarer på grunn av problemet med at funksjonene som er beskrevet ikke er riktige.
ScreenshotException Det er ikke mulig å fange en skjerm.
SessionNotCreatedException Det skjer når en ny økt ikke kunne opprettes.
UnableToSetCookieException Dette skjer hvis en driver ikke kan angi en informasjonskapsel.
UnexpectedTagNameException Skjer hvis en supportklasse ikke fikk et webelement som forventet.
UnhandledAlertException Denne forventningen oppstår når det er et varsel, men WebDriver er ikke i stand til å utføre varslingsoperasjon.
UnexpectedAlertPresentException Det oppstår når det ser ut som et uventet varsel.
Ukjent metode unntak Dette unntaket skjer når den forespurte kommandoen samsvarer med en kjent URL, men ikke samsvarer med en metodikk for en spesifikk URL.
UnreachableBrowserException Dette unntaket oppstår bare når nettleseren ikke kan åpnes eller krasjet av en eller annen grunn.
Ikke-støttet CommandException Dette skjer når ekstern WebDriver ikke sender gyldige kommandoer som forventet.

Håndtering av unntak av selen

Her er noen viktige standarder som du kan håndtere unntak i Selenium WebDriver:

Try-catch : Denne metoden kan fange unntak, som bruker en kombinasjon av søkeordene. Try-kommandoen indikerer starten på blokken, og Catch plasseres på slutten av prøveblokken, noe som hjelper til med å løse unntaket.

prøve{// Kode} fangst (unntak e) {// Kode for unntak for håndtering}
  • Flere fangstblokker : Det finnes forskjellige typer unntak, og du kan forvente mer enn ett unntak fra en enkelt kodeblokk. Flere fangster hjelper deg med å håndtere alle typer unntak separat med en egen kodeblokk. Den kan brukes i mer enn to fangstblokker, og det er ingen begrensning på antall fangstblokker.
prøve{//Kode} fangst (ExceptionType1 e1) {// Kode for håndtering av unntak 1} fangst (ExceptionType2 e2) {// Kode for håndtering av unntak 2}
  • Kast : Når du vil generere et unntak, brukes nøkkelordet for å kaste unntak for å håndtere det i løpetid. Når du kaster et unntak uten å håndtere det, må de bruke kaste nøkkelordet.
offentlig statisk ugyldighet anyFunction () kaster unntak {prøv {// skriv koden din her} Fangst (unntak b) {// Gjør hva du vil utføre// Kast unntaket tilbake til systemetkaste (b);}}
  • Flere unntak : Du kan nevne forskjellige unntak i kaste-setningen.
offentlig statisk ugyldighet anyFunction () kaster ExceptionType1, ExceptionType2 {prøv {// skriv koden din her} fangst (ExceptionType1 e1) {// Kode for å håndtere unntak 1} fangst (ExceptionType1 e2) {// Kode for å håndtere unntak 2}
  • Til slutt : Det endelige nøkkelordet brukes til å lage en blokk med kode under prøveblokken. Det er den endelige koden som hjelper deg å utføre uavhengig av forekomst av et unntak
prøv {//Kode} fangst (ExceptionType1 e1) {// Fangstblokk} fangst (ExceptionType2 e2) {// Fangstblokk} fangst (ExceptionType3 e3) {// Fangstblokk} endelig {// Den endelige blokken kjøres alltid.}

Metoder for visning av unntak

Du kan også bruke følgende metoder for å vise unntaksinformasjon:

  • printStackTrace () : Denne funksjonen skriver ut stabelspor, navnet på unntaket og annen nyttig beskrivelse.
  • toString () : Denne funksjonen returnerer en tekstmelding som beskriver unntaksnavnet og beskrivelsen.
  • getMessage () : Hjelper med å vise beskrivelsen av unntaket .

Sammendrag:

  • Et unntak er en feil som oppstår på tidspunktet for utførelsen av et program.
  • Try-catch: Denne metoden kan fange Unntak, som bruker en kombinasjon av søkeordene for prøve og fangst.
  • Flere fangster hjelper deg med å håndtere alle typer unntak separat med en egen kodeblokk.
  • Kast-nøkkelord brukes til å kaste Unntak for å håndtere det i løpetid.
  • printStackTrace (): Denne funksjonen skriver ut stabelspor, navnet på unntaket og annen nyttig beskrivelse
  • toString (): Denne funksjonen returnerer en tekstmelding som beskriver unntaksnavnet og beskrivelsen.
  • getMessage (): Hjelper med å vise beskrivelsen av unntaket.