Sommaire

Un mois d’essai gratuit, sans engagement.

Validation des transactions bancaires et financières

Dans cet exemple, nous allons aborder les bénéfices du Model Based Testing dans le contexte d’une validation de transactions bancaires et financières.

MaTeLo accompagne la validation des transactions bancaires et financières

Plus votre système est complexe , plus MaTeLo est efficace !

MaTeLo génére l’ensemble du référentiel de test pour les systèmes d’information transactionnels dans la banque ou la finance. MaTeLo crée la variabilité des flux d’entrées des transactions et calcule le résultat attendu des flux de sorties liés aux règles de gestion du système à tester.

MaTeLo est utilisé pour valider avec un grand degré de confiance, tout en réduisant les phases de test :

  • Les transactions boursières et les algorithmes de bourses
  • Les systèmes de paiement électronique par terminal de paiement ou par internet
  • Les transactions monétiques et leur traitement par les banques
  • Les transactions d’achat
  • Les systèmes de réservation
  • Les webservices Rest ou Soap
  • Tout système transactionnel avec un flux entrant et sortant de données structurées

Un outil simple de représentation graphique des règles de gestion

Le testeur saisit ses règles de gestion dans MaTeLo sous forme de tables logiques dépendant des classes d’équivalences des variables précédemment tirées par MaTeLo. Ces conditions aiguillent des combinatoires dans des sous-processus, eux même composés de nouvelles règles de gestion.

Avec cette méthode, il est aisé de décrire le fonctionnement attendu du système. Ces règles permettent d’orienter précisément le comportement du système utilisant les données d’entrée, pour être en mesure de récréer le flux de sortie et l’oracle de test. MaTeLo est taillé pour pouvoir gérer des milliers de règles de gestion, en travail collaboratif.

Des algorithmes puissants de génération au profit des automaticiens

Une approche statistique des tests pour faire face à la combinatoire

Un système à tester peut souvent dépasser largement les 100 variables, elles même décomposables en 10 classes d’équivalence. Si l’on voulait tester toutes les combinatoires, on aurait sur ce système 10100 tests. Même avec des outils performants ce n’est pas envisageable ! 

C’est pourquoi MaTeLo propose une méthode éprouvée basée sur le test statistique permettant d’obtenir un échantillon représentatif des usages ou des risques indiqués par le testeur. Il est ainsi possible à l’utilisateur MaTeLo de régler ses propres profils statistiques de test sur les choix des transitions ou des classes d’équivalence.

Génération des suites de test

MaTeLo dispose d’algorithmes déterministes pouvant générer le plus petit ensemble de step de test pour assurer la couverture complète du modèle ou des classes d’équivalence, ou bien permettant de choisir par priorité les scenarios les plus risqués.

D’autres algorithmes, statistiques, généreront des échantillons représentatifs des combinatoires, avec le minimum de doublon et convergeant vers le profil statistique de risque ou d’usage.

Une gestion des données de test riche et simple

Création du dictionnaire des données de test

Pour créer la variabilité des données d’entrées, MaTeLo analyse les référentiels de données existants et en extrait les variables utiles à la combinatoire des transactions.

Les variables sont décomposées en classes d’équivalences numériques ou discrètes, afin d’avoir des données logiques sur lesquelles seront bâties les règles de gestion.

Récupération des données à partir de bases existantes

Certaines données ont besoin d’être récoltées dans des jeux de données existants ou bien directement dans les bases de données du système d’information. Avec son datasource, MaTeLo puise dans tous les référentiels existants (Oracle, AS/400 ; DB2, excel…), les données nécessaires à la valorisation d’une combinatoire selon ses classes d’équivalence.

Les transactions contiennent alors les données physiques compréhensibles par le système (Numéro de carte bancaire, numéro de transaction, etc.)

Valorisation des données de test à partir de formules simples

Lorsqu’il existe des règles de gestion décrivant le formatage possible d’une donnée d’entrée, MaTeLo créée les données physiques, avec toute la variabilité possible, grâce à des générateurs basés sur des formules mathématiques, la gestion de chaines de charactère, des dates ou des formules Excel. Une feuille Excel externe peut être aussi utilisée comme calculateur.

Création de données dynamiques

Toujours grâce à son datasource, MaTeLo permet de créer et gérer à la volée des ensemble données dynamiques. Cette fonctionnalité crée à la volée des données et les stocke dans des tableaux, pour en faire des tris, filtres, permutation, regroupement, navigation, minimum, maximum, moyenne, calcul etc. 

Ces ensembles de données peuvent représenter des vecteurs d’entrée ou de sortie, des FIFO, LIFO, ou tableaux de données nécessaire à une stimulation ou vérification d’un système.

Se concentrer sur des cas faisables ou fonctionnels

En déposant les structures d’une variable sur une transition, MaTeLo pourra générer une combinatoire parmi ses classes d’équivalences. Par défaut toutes les combinatoires sont possibles. Il est toutefois très courant qu’un système nécessite d’avoir de la cohérence dans le choix de ses données. MaTeLo permet de représenter graphiquement les dépendances de classes.

MaTeLo dispose d’un générateur de pattern qui transforme graphiquement les classes sous forme d’arborescence. L’utilisateur n’a plus qu’à supprimer ou fusionner certains chemins pour refléter le lien entre les classes et obtenir la combinatoire cohérente.

Des tests pilotés par les données

Il arrive que le testeur souhaite recréer des scénarios basés sur des logs de production. Dans ce cas MaTeLo ne génère pas les combinatoires d’entrées mais lit séquentiellement ces logs pour créer le vecteur d’entrée des stimulations du système. Tout comme les combinatoires générées, MaTeLo calcule avec ses règles de gestion les résultats attendus et les flux de sorties enfonction des données d’entrées.

Deux modes d'utilisation

Un mode On-line pour éxecuter les campagnes directement dans MaTeLo

Avec son mode On-Line, MaTeLo exécute les tests pendant la génération pour réaliser automatiquement la campagne et calculer le verdict. MaTeLo intègre des robots de test par défaut, permettant d’automatiser les navigateurs webs, faire des web services soap et rest, automatiser des clients lourds par reconnaissance d’image et de caractère, piloter des lignes de commandes, et accéder aux bases de données.

Cette fonction permet d’interagir avec le système pendant la génération, et de réaliser des tests de bout en bout. Toute API existante s’intègre dans MaTeLo pour y être séquencée et détecter automatiquement les défauts du système.

Synchronisation du référentiel de test avec ALM

Tout le référentiel de test produit par MaTeLo se synchronise avec les principaux ALM du marché (Microfocus ALM QC, Doors, Testlink, Squash, Silk Central,etc). Cela concerne les modèles, cas de test, suites de test, données de test, scripts de test, et résultat de campagne.

Un mode Off-line permettant de créer les scripts de test

Les opérations de test qui contiennent une portion de script avec des paramètres sont déposées sur le modèle.

L’algorithme de MaTeLo créer les scripts nécessaires à l’automatisation en assemblant les opérations de test des suites de test générées. Ces scripts sont directement exécutables par les robots de test.

Il n’y a pas de limitation sur leur format de sortie : xml, csv, python, script Gallit, java, soapui, selenium, bash, etc… Les scripts peuvent générer aussi les logs censés être produits par le système à tester pour détecter les anomalies par une comparaison ligne à ligne.

Essayez gratuitement MaTeLo

Un mois d’essai gratuit, sans engagement.

Contactez-nous !