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.