Nous contacter au +33 1 84 20 44 13

3 méthodes pour maintenir en condition opérationnelle (MCO) des scénarios de tests fonctionnels UI.

Nous souhaitions partager avec vous un des prérequis de l’automatisation, grâce aux différents retours d’expérience de partenaires et de clients : la création et le maintien en condition opérationnelle (MCO) des scénarios de tests. Les tests qui sont les plus aptes à détecter les défauts, car au plus proche du besoin de l’utilisateur, sont aussi ceux qui sont les plus complexes à créer et à maintenir : les tests fonctionnels UI.

Pour mémoire les tests fonctionnels permettent de valider que les fonctionnalités livrées sur le logiciel correspondent aux attentes du cahier des charges. Ils garantissent que les cas d’usage (workflow) peuvent être déroulés et que les résultats obtenus sont cohérents. Ces tests sont conduits par les équipes MOA et/ou par les équipes métiers.

Par exemple, un test fonctionnel permettra de vérifier que sur un site e-commerce il est possible de créer un compte utilisateur, de mettre au panier un article et de le payer.

Les tests fonctionnels peuvent être complétés par des tests non-fonctionnels qui permettent de vérifier que le logiciel fonctionnera correctement en conditions de production (tests de performance, d’utilisabilité, de fiabilité, …).

Lorsque la couverture en tests unitaires est importante, la nécessité d’avoir une couverture en tests fonctionnels UI est présente, mais peut être optimisée sur des parcours spécifiques. 

Si celle-ci est faible ou inexistante, la couverture en tests fonctionnels UI doit devenir le « filet de protection » de l’application.

Dans les processus de tests automatisés la première phase c’est la création et la maintenance des scénarios de tests, tout comme pour des tests manuels ou semi-automatisés. 

La différence fondamentale est qu’en automatisant vos tests votre couverture sera bien plus importante et de fait bien plus chronophage à maintenir. C’est là que, fréquemment, plus on livre et moins on maintient (les scénarios permettant de réaliser les tests de non régressions). 

Erreur souvent fatale, car inévitablement des effets de bords, des régressions, … sont introduits au fur et à mesure que de nouvelles (ou adaptations) de fonctionnalités sont introduites dans les versions livrées. 

On entend par scénario la définition des parcours de tests (scénarios / mots clés / jeux de données) et de leur maintenance au fil des itérations. 

Plusieurs méthodes existent :

  • Méthode « Capture + Replay » avec des données statiques ou variabilisées Cela consiste à enregistrer un parcours utilisateur en le jouant dans le contexte d’exécution. Les actions manuelles sont enregistrées pour être reproduites ensuite. Les données enregistrées peuvent rester statiques ou être variabilisées. Cette méthode est simple pour la création rapide de tests mais complexe à maintenir au cours des itérations.
  • Méthode structurée basée sur des scripts. Cela consiste à scripter les parcours et utiliser une sémantique dédiée qui décrit les actions. Cela est très puissant et modulable mais attention d’éviter les langages de scripts propriétaires ! La maintenance demande à l’automaticien de l’expérience et des compétences dédiées.
  • Méthode par « mots-clés ». Cela consiste à découpler la complexité de l’exécution et celle des notions fonctionnelles à tester. L’automaticien peut générer des fonctions élémentaires avec une des méthodes précédentes et les rendre disponibles sous la forme de mots-clés (potentiellement avec des variables). Les mots-clés auront une sémantique fonctionnelle. Il suffit alors d’enchaîner les mots-clés pour créer le parcours de test. Si le contexte technique évolue (mise à jour du navigateur qui demande une adaptation de script par exemple), l’automaticien modifie le script, mais le test reste inchangé (enchaînement des mots-clés).

Il existe bien entendu des outils qui prennent en charge toutes les méthodes et qui peuvent les combiner (exemple : la « capture » génère un script utilisable avec des mots-clés).

Pour conclure

.

Pour identifier la méthode qui vous conviendra le mieux il faut systématiquement peser les pours et les contres. Ce qui est simple à mettre en place est généralement compliqué à maintenir et convient pour des tests “unitaires”.
Dans une stratégie d’intégration de ces tests au sein d’un patrimoine pour optimiser et améliorer la qualité des livrables il est préférable de vous baser sur des scripts. La méthode qui vous permettra d’atteindre vos objectifs est avant tout celle que vous appréhenderez le mieux !

Les dernières actualités

ESSAYER GRATUITEMENT
2019-07-03T15:10:16+02:00
! Important ! Nous recherchons activement un testeur automaticien
VOIR L'OFFRE
close-image

Gratuit : le guide de l'automatisation des tests !

Nous vous mettons à disposition gratuitement les clés de la réussite de l'automatisation des vos tests logiciels.
TÉLÉCHARGER ICI
Document 100% gratuit
close-link
Ouvrir