Gestion des erreurs

Lorsqu'une erreur se produit lors de l'exécution d'une étape, elle est gérée comme spécifié dans l'onglet Gestion des erreurs pour la configuration de l'étape. Les activités de test peuvent également appliquer le même traitement lorsqu'une condition échoue. Il existe deux aspects de la gestion d'une erreur ou d'un test échoué : Comment et où rapporter ou journaliser l'incident, et comment et où procéder à l'exécution des Robots à Moteur Basique.

Propriétés

La gestion des erreurs est configurée à l'aide des propriétés suivantes.

Exception API

Cette propriété spécifie s'il faut rapporter ou non l'incident à l'appelant du robot. Les rapports fonctionnent différemment selon la manière dont le robot est exécuté :

  • La propriété n'a aucun effet lorsque le robot est exécuté en mode Conception dans Design Studio car l'incident est toujours rapporté dans ce mode (sauf lorsqu'il est géré à l'aide de Ignorer et continuer comme décrit ci-dessous).
  • Lorsque le robot est exécuté dans la Management Console, les exceptions d'API sont simplement comptées et journalisées comme des erreurs et n'arrêtent pas l'exécution. Dans ce scénario, nous vous recommandons d'utiliser la même valeur (cochée ou décochée) que pour Consigner comme erreur.
  • Lorsque le robot est exécuté par un client via l'une des API et qu'il s'exécute sur un RoboServer, le rapport est renvoyé à l'appelant via l'API comme suit :
    RobotErrorResponse
    Cela provoque une exception du côté de l'appelant, au moins lors de l'utilisation du RQLHandler par défaut. (Ce cas explique le nom de la propriété.)

La propriété peut être décochée ou cochée, mais elle peut également être marquée d'un astérisque * signifiant qu'elle a été explicitement définie sur une valeur autre que celle par défaut. Ceci est expliqué dans Afficher les modifications par défaut, où il est également montré comment supprimer l'astérisque et revenir à la valeur par défaut. Lorsque la valeur par défaut s'applique (c'est-à-dire lorsqu'aucun astérisque n'est présent), sachez que le défaut varie en fonction de la sélection effectuée sous la propriété Alors.

Consigner comme erreur

Cette propriété spécifie de journaliser ou non l'incident. Cela diffère des rapports (voir ce qui précède).

  • Lorsque le robot est exécuté en mode Conception dans Design Studio, l'incident est ajouté au journal qui s'affiche lorsque vous sélectionnez Afficher le journal dans le menu Affichage.
  • Lorsque le robot est exécuté en Mode débogage, l'incident est ajouté à l'onglet Journal.
  • Lorsque le robot est exécuté dans un RoboServer (depuis la Management Console ou via l'API), l'incident est journalisé à l'endroit défini dans les paramètres du cluster pour le RoboServer donné. Il s'agit probablement de la même base de données que celle utilisée par la Management Console.

La propriété peut être décochée ou cochée, mais elle peut également être marquée d'un astérisque * exactement comme expliqué précédemment pour l'exception API.

Alors

Cette propriété spécifie comment et où poursuivre l'exécution du robot après l'incident. Les options suivantes sont disponibles.

Ignorer les étapes suivantes (par défaut)

Les étapes suivant celle avec l'erreur (ou la condition de test échouée) ne sont pas exécutées. L'exécution se déroule comme si elles avaient été exécutées avec succès.

Ignorer et continuer

L'étape avec l'erreur (ou la condition de test échouée) est ignorée et l'exécution se poursuit avec l'étape suivante comme d'habitude.

Essayer l'alternative suivante

Cela peut être utilisé dans une branche issue d'une étape de tentative. L'exécution de la branche actuelle à partir de l'étape de tentative est abandonnée et l'exécution se poursuit avec la première étape sur la branche suivante de cette étape de tentative. L'exécution y continuera avec le même état de robot que pour la première branche.

Si la branche actuelle est la dernière de cette étape de tentative, Essayer l'alternative suivante n'est pas illégal mais provoque une erreur (« toutes les alternatives ont échoué ») qui est gérée selon la façon dont la gestion des erreurs est configurée pour l'étape de tentative.

Lorsque les étapes de tentative sont imbriquées, il est possible de sélectionner l'étape de tentative appropriée parmi celles qui se trouvent sur le chemin d'exécution de l'étape actuelle.

Renvoyer (rétrocompatibilité)

Cette option n'est présente que pour fournir une rétrocompatibilité avec les robots créés par les versions Design Studio antérieures à 8.0. Elle est décrite séparément.

Itération suivante

Cette option peut être utilisée dans une boucle, c'est-à-dire après une étape de boucle quelconque (sauf une boucle Répéter-Suivant). L'exécution de l'itération de la boucle actuelle est abandonnée et l'exécution se poursuit avec l'itération suivante. Autrement dit, l'exécution se poursuit avec la première étape après l'étape de boucle et avec un état de robot qui correspond à l'élément suivant après la boucle.

Lorsque les boucles sont imbriquées, il est possible de sélectionner la boucle appropriée dans laquelle passer à l'itération suivante.

Boucle de rupture

Cette option peut être utilisée dans une boucle, c'est-à-dire après une étape de boucle quelconque (y compris une boucle Répéter-Suivant). L'exécution de la boucle est abandonnée. Ainsi, l'itération actuelle n'est pas terminée et les itérations suivantes ne sont pas exécutées du tout. Cela signifie que l'exécution continue avec la même étape qu'après la fin normale de la boucle.

Lorsque les boucles sont imbriquées, il est possible de sélectionner la boucle appropriée parmi celles qui se trouvent sur le chemin d'exécution de l'étape actuelle.