Gestion des exceptions Selenium (liste des exceptions courantes)

Table des matières:

Anonim

Qu'est-ce qu'une exception?

Une exception est une erreur qui se produit au moment de l'exécution d'un programme. Cependant, lors de l'exécution d'un programme, les langages de programmation génèrent une exception qui doit être gérée pour éviter que votre programme ne plante.

L'exception indique que, bien que l'événement puisse se produire, ce type d'événement se produit rarement. Lorsque la méthode n'est pas en mesure de gérer l'exception, elle est renvoyée à sa fonction appelante. Finalement, lorsqu'une exception est levée hors de la fonction principale, le programme se termine brusquement.

Dans ce tutoriel, vous apprendrez:

  • Qu'est-ce qu'une exception?
  • Exceptions dans le pilote Web Selenium
  • Gestion des exceptions au sélénium
  • Méthodes d'affichage de l'exception

Exceptions courantes dans le pilote Web Selenium

Nom de l'exception Description
ElementNotVisibleException Ce type d'exception Selenium se produit lorsqu'un élément existant dans DOM a un ensemble de fonctionnalités comme masqué.
ElementNotSelectableException Cette exception Selenium se produit lorsqu'un élément est présenté dans le DOM, mais vous pouvez être en mesure de sélectionner. Par conséquent, il n'est pas possible d'interagir.
NoSuchElementException Cette exception se produit si un élément est introuvable.
NoSuchFrameException Cette exception se produit si la cible de trame vers laquelle basculer n'existe pas.
NoAlertPresentException Cette exception se produit lorsque vous passez à aucune alerte présentée.
NoSuchWindowException Cette exception se produit si la fenêtre cible à basculer n'existe pas.
StaleElementReferenceException Cette exception Selenium se produit lorsque l'élément Web est détaché du DOM actuel.
SessionNotFoundException Le WebDriver agit une fois que vous avez quitté le navigateur.
TimeoutException Lancé lorsqu'il n'y a pas assez de temps pour qu'une commande soit exécutée. Par exemple, l'élément recherché n'a pas été trouvé dans le délai spécifié.
WebDriverException Cette exception a lieu lorsque le WebDriver agit juste après la fermeture du navigateur.
ConnectionClosedException Ce type d'exception a lieu lorsqu'il y a une déconnexion dans le pilote.
ElementClickInterceptedException La commande peut ne pas être exécutée car l'élément recevant les événements cache l'élément sur lequel le clic a été demandé.
ElementNotInteractableException Cette exception Selenium est levée lorsqu'un élément est présenté dans le DOM. Cependant, il est impossible d'interagir avec un tel élément.
ErrorInResponseException Cela se produit lors de l'interaction avec l'extension Firefox ou le serveur de pilotes distant.
ErrorHandler.UnknownServerException L'exception est utilisée comme espace réservé au cas où le serveur renvoie une erreur sans trace de pile.
ImeActivationFailedException Cette attente se produit lorsque l'activation du moteur IME a échoué.
ImeNotAvailableException Il a lieu lorsque le support IME n'est pas disponible.
InsecureCertificateException La navigation a obligé l'agent utilisateur à lancer un avertissement de certificat. Cela peut être dû à un certificat TLS invalide ou expiré.
InvalidArgumentException Cela se produit lorsqu'un argument n'appartient pas au type attendu.
InvalidCookieDomainException Cela se produit lorsque vous essayez d'ajouter un cookie sous un domaine différent au lieu de l'URL actuelle.
InvalidCoordinatesException Ce type d'exception correspond à une opération en interaction qui n'est pas valide.
InvalidElementStateExceptio Cela se produit lorsque la commande ne peut pas être terminée lorsque l'élément n'est pas valide.
InvalidSessionIdException Cette exception a eu lieu lorsque l'ID de session donné n'est pas inclus dans la liste des sessions actives. Cela signifie que la session n'existe pas ou est inactive non plus.
InvalidSwitchToTargetException Cela se produit lorsque le cadre ou la fenêtre cible à changer n'existe pas.
JavascriptException Ce problème se produit lors de l'exécution du JavaScript fourni par l'utilisateur.
JsonException Cela se produit lorsque vous vous permettez d'obtenir la session alors que la session n'est pas créée.
NoSuchAttributeException Ce type d'exception se produit lorsque l'attribut d'un élément est introuvable.
MoveTargetOutOfBoundsException Il a lieu si la cible fournie à la méthodologie ActionChains move () n'est pas valide. Par exemple, hors du document.
NoSuchContextException ContextAware effectue des tests sur les appareils mobiles.
NoSuchCookieException Cette exception se produit lorsqu'aucun cookie correspondant au chemin d'accès donné n'a été trouvé pour tous les cookies associés du document en cours de navigation.
NotFoundException Cette exception est une sous-classe de WebDriverException. Cela se produira lorsqu'un élément du DOM n'existe pas.
RemoteDriverServerException Cette exception Selenium est levée lorsque le serveur ne répond pas en raison du problème que les capacités décrites ne sont pas appropriées.
Capture d'écranException Il n'est pas possible de capturer un écran.
SessionNotCreatedException Cela se produit lorsqu'une nouvelle session n'a pas pu être créée avec succès.
UnableToSetCookieException Cela se produit si un pilote est incapable de définir un cookie.
UnexpectedTagNameException Se produit si une classe de support n'a pas obtenu d'élément Web comme prévu.
UnhandledAlertException Cette attente se produit lorsqu'il y a une alerte, mais WebDriver n'est pas en mesure d'exécuter l'opération d'alerte.
UnexpectedAlertPresentException Cela se produit lors de l'apparition d'une alerte inattendue.
UnknownMethodException Cette exception se produit lorsque la commande demandée correspond à une URL connue mais ne correspond pas à une méthodologie pour une URL spécifique.
UnreachableBrowserException Cette exception se produit uniquement lorsque le navigateur ne peut pas être ouvert ou bloqué pour une raison quelconque.
UnsupportedCommandException Cela se produit lorsque WebDriver distant n'envoie pas de commandes valides comme prévu.

Gestion des exceptions au sélénium

Voici quelques normes importantes à l'aide desquelles vous pouvez gérer les exceptions dans Selenium WebDriver:

Try-catch : cette méthode peut intercepter les exceptions, qui utilise une combinaison des mots-clés try et catch. La commande Try indique le début du bloc et Catch est placé à la fin du bloc try, ce qui permet de résoudre l'exception.

essayer{// Code} catch (Exception e) {// Code pour l'exception de gestion}
  • Blocs de capture multiples : il existe différents types d'exceptions, et vous pouvez vous attendre à plus d'une exception à partir d'un seul bloc de code. Les captures multiples vous aident à gérer chaque type d'exception séparément avec un bloc de code distinct. Il peut être utilisé pour plus de deux blocs catch, et il n'y a aucune limitation sur le nombre de blocs catch.
essayer{//Code} catch (ExceptionType1 e1) {// Code de gestion de l'exception 1} catch (ExceptionType2 e2) {// Code de gestion de l'exception 2}
  • Throw : lorsque vous souhaitez générer une exception, le mot clé Throw est utilisé pour lever Exception afin de la gérer au moment de l'exécution. Lorsque vous lancez une exception sans la gérer, ils doivent utiliser le mot clé Throw.
public static void anyFunction () jette une exception {essayer {// écrivez votre code ici} Catch (exception b) {// Faites ce que vous voulez faire// Renvoie l'exception au systèmelancer (b);}}
  • Exceptions multiples : vous pouvez mentionner diverses exceptions dans la clause throws.
public static void anyFunction () jette ExceptionType1, ExceptionType2 {essayer {// écrivez votre code ici} catch (ExceptionType1 e1) {// Code pour gérer l'exception 1} catch (ExceptionType1 e2) {// Code pour gérer l'exception 2}
  • Enfin : le mot clé Final est utilisé pour créer un bloc de code sous le bloc try. C'est le code final qui vous aide à s'exécuter indépendamment de l'occurrence d'une exception
essayer {//Code} catch (ExceptionType1 e1) {// Bloc de capture} catch (ExceptionType2 e2) {// Bloc de capture} catch (ExceptionType3 e3) {// Bloc de capture} finalement {// Le bloc finally s'exécute toujours.}

Méthodes d'affichage de l'exception

Vous pouvez également utiliser les méthodes suivantes pour afficher les informations d'exception:

  • printStackTrace () : cette fonction imprime la trace de la pile, le nom de l'exception et d'autres descriptions utiles.
  • toString () : Cette fonction renvoie un message texte décrivant le nom et la description de l'exception.
  • getMessage () : aide à afficher la description de l'exception.

Résumé:

  • Une exception est une erreur qui se produit au moment de l'exécution d'un programme.
  • Try-catch: cette méthode peut intercepter les exceptions, qui utilise une combinaison des mots-clés try et catch.
  • Les captures multiples vous aident à gérer chaque type d'exception séparément avec un bloc de code distinct.
  • Le mot clé Throw est utilisé pour lever Exception afin de le gérer au moment de l'exécution.
  • printStackTrace (): cette fonction imprime la trace de la pile, le nom de l'exception et d'autres descriptions utiles
  • toString (): Cette fonction renvoie un message texte décrivant le nom et la description de l'exception.
  • getMessage (): aide à afficher la description de l'exception.