Le Model Based Testing permet de produire des cas de tests à partir d’un modèle. C’est une déclinaison des solutions d’ingénierie des modèles appliquées au test. L’objectif est d’éviter au testeur d’écrire chaque cas de test manuellement pour se concentrer sur des tâches à plus forte valeur ajoutée.
Ainsi, le testeur construit d’abord un modèle qui décrit le fonctionnement de son application. Il définit ensuite sa stratégie de test via le choix d’un algorithme de parcours, puis l’application génère automatiquement l’ensemble des cas de tests.
La représentation graphique nécessaire pour représenter le modèle d’usage s’appuie sur des concepts simples mais suffisants pour exprimer l’ensemble des cas possibles : des états & des transitions. Les états représentent des points fixes du système testé (l’arrivée sur une page web par exemple) et les transitions représentent les actions à réaliser pour passer d’un état à l’autre.
Dès les premières phases de conception du modèle, le testeur peut y intégrer les exigences fonctionnelles. Ces dernières sont associées aux différents éléments du modèles, et ces associations permettent de calculer très facilement la couverture réelle. Des métriques pertinentes peuvent ainsi permettre le pilotage des suites de test générées. On passe ainsi d’une approche empirique à une approche pilotée par la couverture des exigences.
Pour aller plus loin, une fois les cas de tests exécutés, une comparaison est possible entre le comportement réel du système sous test et le comportement attendu, décrit dans le modèle. Cette comparaison permet d’assigner un verdict de test.
Quelques vidéos pour comprendre
Liste de lecture
Une démarche, un outil !
L’approche Model Based Testing est apparue dans les années 2000 et MaTeLo est l’outil précurseur. Les premiers déploiements de MaTeLo datent de 2004.
L’outil MaTeLo, outil leader de Model Based Testing intègre un éditeur graphique ergonomique pour concevoir le comportement de vos applications, en utilisant des concepts simples, des états, des transitions et des conditions qui vont représenter l’entrelacement des chemins fonctionnels pour pouvoir générer des cas de test complets et représentatifs.
MaTeLo est adapté à tous types de systèmes : Plate-forme Web, Applications gros systèmes, systèmes industriels de type contrôle-commande, système embarqués…
Un mode On-line est venu compléter l’outil en 2018. Il permet de piloter en temps réel depuis MaTeLo l’exécution de vos cas de tests dans votre automate. MaTeLo réalise la campagne en orchestrant les tests sur différentes plates-formes comme les navigateurs Web, les clients lourds, services Web, consoles, mobiles, simulateurs 3D, etc. et lui permet le calcul du verdict de la campagne.