Reconnaissance d'images dans un test
Dans les tests de l'interface Web, IBM® DevOps Test UI (Test UI) doit identifier les objets avec précision pour une lecture de test réussie. Bien que la plupart des objets puissent être identifiés à l'aide de propriétés textuelles, il existe des cas où l'identification basée sur le texte peut ne pas être réalisable ou efficace. Pour relever ce défi, Test UI fournit des capacités de reconnaissance d'image afin que vous puissiez identifier des objets en fonction de leur apparence visuelle.
Pour relever tout défi potentiel lié à la reconnaissance d'images, Test UI utilise des techniques de corrélation d'images pour reconnaître et gérer les objets pendant la lecture. Pendant l'enregistrement de test, Test UI capture une image (image de référence) qui représente l'action effectuée. Cette image de référence est ensuite comparée à l'image réelle (image candidate) de l'AUT pendant la lecture. Un seuil de reconnaissance est utilisé pour accepter un taux réglable de différences entre l'image de référence et l'image candidate, et pour évaluer si les images correspondent. Le seuil de reconnaissance par défaut est défini sur 80 et le taux de tolérance par défaut est défini sur 20.
La corrélation d'images peut être utilisée dans divers scénarios de test. Voici quelques exemples:
- Supposons que vous enregistriez un test sur un téléphone mobile et que vous le lisiez sur un ordinateur de bureau. Étant donné que la largeur et la hauteur de l'image diffèrent d'un appareil à l'autre, le test de lecture peut échouer sur les appareils qui n'ont pas le même format d'écran. Vous pouvez utiliser la corrélation d'images pour résoudre ce problème.
- Dans certains cas, les objets cibles au sein d'un enregistrement de test peuvent subir des modifications lors de la lecture du test. Par exemple, lorsqu'un clavier virtuel est utilisé dans une application sécurisée, la position des boutons numériques peut varier d'une session serveur à l'autre. Grâce à la corrélation d'images, Test UI peut s’adapter à ces changements dynamiques.
Pendant un test de lecture, si Test UI ne parvient pas à localiser une certaine image dans l'AUT, ou si vous avez sélectionné une image inappropriée pour l'identification de l'image, le test peut échouer. Pour résoudre les problèmes de reconnaissance lors de la lecture, vous pouvez modifier l'image utilisée pour l'identification de l'objet cible lors de l'étape de test. En outre, vous pouvez ajuster le score seuil et le rapport de tolérance dans le test modifié pour améliorer la reconnaissance d'image. Si vous définissez le seuil sur 0, l'image candidate la plus similaire à l'image de référence est sélectionnée, même si elles ne sont pas identiques. À l’inverse, si vous définissez le seuil sur 100, même une légère différence entre les images peut empêcher la reconnaissance des images.
Lorsque vous définissez le seuil de reconnaissance dans l'éditeur de tests, Test UI affiche un aperçu de la correspondance d'image pour vous aider à trouver des images candidates précises pour la lecture de test. Les images candidates les mieux adaptées sont surlignées en vert. Les images dont le score est supérieur au seuil sont surlignées en jaune et peuvent ne pas être les plus adaptées. Et les images candidates dont le score est inférieur au seuil sont surlignées en rouge, ce qui indique qu'elles ne correspondent pas aux images de référence. Vous pouvez trouver les détails de corrélation d'image dans le rapport de test qui s'affiche une fois l'exécution d'un test terminée.
Vous pouvez ajouter des images comme propriété principale dans un point de vérification sur les objets cibles dans les tests. Par exemple, vous pouvez vérifier la position d'une liste déroulante sur un écran. Pour plus de détails, voir Création de points de vérification à partir de la vue SmartShot.
En utilisant la fonction de reconnaissance d'image, Test UI peut identifier des objets en fonction de leur apparence visuelle lorsque l’identification textuelle constitue un défi.