Agilitest se met à la reconnaissance graphique

19 juin 2019

Une nouvelle fonctionnalité a vu le jour dans votre solution préférée de test logiciel ! Il s’agit de la reconnaissance graphique d’éléments de vos applications (web, mobile, desktop) pour effectuer des comparaisons d’éléments graphiques entre eux.

Capture logique et capture graphique

Jusqu’à présent, les détections et les comparaisons d’éléments d’applications nécessitaient une capture d’élément et de ses attributs textuels. Pour ce faire, vous utilisiez l’outil de capture Agilitest qui vous permettait de plonger dans l’arborescence de votre application et de sa logique de données.

A présent, cet outil de capture s’est étoffé avec une possibilité de capture graphique qui « photographie » une petite zone de l’application dans le but de détecter son occurrence lors d’un test, une fois ou plusieurs fois.

Mettre en oeuvre une capture graphique de votre application

Pour utiliser la fonctionnalité de reconnaissance graphique, il vous suffit d’ouvrir l’outil de capture Agilitest et de sélectionner une zone rectangulaire. Le rectangle de sélection bleu vous permet de choisir la zone à capturer, en vue de sa détection ultérieure lors d’un test.

Sélection d’une zone graphique dans Agilitest

Une fois l’image sélectionnée, Agilitest vous permet de copier ou enregistrer l’image pour une utilisation externe, mais vous pouvez aussi dropper directement l’image dans un commentaire Agilitest ou accéder à l’arborescence des éléments pour générer une zone activable.

L’arborescence des éléments affiche la plus petite fenêtre contenant complètement la zone graphique sélectionnée. Cela permet de combiner efficacement une recherche standard basée sur les données et une zone de recherche graphique : la recherche standard va « cerner » une zone dans laquelle se fera la recherche des éléments graphiques. Cette partie peut être évitée si l’on souhaite faire une recherche sur la totalité de la page visible, mais cela pourrait être plus long en temps et plus coûteux en ressources système. La combinaison des deux méthodes est donc optimale pour réaliser des tests rapides.

Sélection d’éléments permettant de cerner la zone graphique de recherche

Par la suite, l’utilisation de cette capture graphique est très similaire à l’utilisation d’une capture Agilitest habituelle : vous n’avez qu’à glisser-déposer la capture dans une ligne d’action du script ATS, ou bien juste en-dessous de la dernière ligne du script pour en créer une nouvelle.

Exemple de contrôle d’occurrences se basant sur une recherche graphique
Localisation de la capture en live

Finalité de la recherche graphique

Finalement, la recherche graphique pour identifier des zones activables pour les tests logiciels, ça sert à quoi ?

C’est très utile, dans certains cas, pour permettre tout simplement de passer une étape que les autres technologies ne supportent pas, par exemple une fenêtre de login dans une applet java : une recherche basée sur les composants ne verra pas les éléments affichés à l’intérieur de l’applet, alors que vous pouvez les retrouver par une recherche graphique, les activer, saisir du texte, etc.

Mais ces éléments graphiques sont visibles et donc soumis aux modifications des chartes graphiques, des textes, ou tous les éléments de l’application qui sont affichés, ce qui n’est pas le cas des éléments d’identification non visibles et cachés dans la structure de données des pages ou logiciels. Il est donc risqué de trop s’appuyer sur la recherche graphique quand d’autres options sont possibles, car cela peut engendrer des coûts de maintenance importants des tests réalisés.