Skip to content Skip to footer

ReplicTest

Outil de test IBM i automatisé de bout en bout

Application Testing: You Need It When You Need It

Charlie Guarino, President of Central Park Data Systems, IBM Champion, Podcaster at Tech Talk SMB presents:
Polverini & Partners CTO Pascal Polverini on the critical role of testing in IBM i application development

La simplicité et l'efficacité sont les facteurs prédominants de cet outil, "engine" de Test pour vos applications IBM i

Écran vert natif 5250

Encapsulation IO + NavigationPlug-in pour IBM i Access Client Solutions (ACS)Test accéléré jusqu'à 200 fois plus vite que manuellement

Web Services

Encapsulation IO avec initialisation et comparaison (GET, POST)API REST, microservices

Tables DB de l'application

Encapsulation automatisée des tables de base de données avec réinitialisation et comparaison des données pour tous les environnements de test (5250, Web, batch)Intègre RLA, SQL, ODBC, JDBC

Couverture de code

Détails des lignes et % de code couvert par un seul test ou merge des lignes et % par plusieurs tests.(Fusionner la couverture du code et disposer d'informations de manière dynamique est essentiel pour valider les classements de qualité et gouverner les flux de processus.)

Call pgm IO parm

Encapsulation parm IO avec initialisation et comparaison des paramètres

Shrink Data (réduire les données)

Création d'un sous-ensemble de données avec uniquement les enregistrements effectivement utilisés par le scénario de test.(Permet d'augmenter la fréquence des replay des tests avec une réduction considérable des délais d'exécution)

Activez et automatisez vos testsInstitutionnalisez la qualité et économisez plus de 88 % de votre temps

Accélérer la mise sur le marché

Intégration complète de la base de données

L'identification des tables de base de données et des fichiers pour les images, la restauration et la comparaison sont automatiquement gérées.

Les tests doivent être réplicables, ce qui signifie que les données doivent être réinitialisées à chaque fois qu’un test est rejoué et de nombreux outils de test, comme le nôtre, incluent cette fonctionnalité. Mais la condition préalable est que tous les fichiers ou tables de données soient d’abord identifiés. Cette condition préalable est souvent laissée à l’utilisateur final ou certains outils copient simplement des bibliothèques entières avec tous les fichiers et tables. RelicTest le fait automatiquement à la volée et uniquement pour les fichiers et tables réellement utilisés par le scénario de test spécifique. Ceci optimise tous les processus de votre IBM i (alias AS400), de l’identification des prérequis à l’exécution, effectuant et automatisant toutes les tâches difficiles pour vous.

Automatisé pour les programmes batch, Web ou interactifs

La même commande est utilisée pour traiter l’enregistrement ou le replay du scénario de test. Par défaut, la commande détecte automatiquement dans quelle modalité elle doit s’exécuter ; enregistrement ou replay et selon la modalité, différents comportements sont traités pour copier, restaurer ou comparer les images de données.

Holistique

Tests complets de manière holistique avec notre moteur d’encapsulation de test, inter/batch/web (encapsulant DB, UI, parm IO, parm body et couverture de code – avec restaurations et comparaisons)

Notre « Moteur d’encapsulation » est « omnivore » : Il peut également intégrer n’importe quel objet comme les fichiers spool, dtaara, dtaq, les objets IFS, le joblog, etc… et plus encore, lorsque vous modifiez un objet dans votre système, vous saurez quels tests l’ont impliqué et les relancer tous.

Invocable en tant que wrapper pour un seul ou une série de Call, d’API REST ou de requêtes SQL.
Autonome ou plugable à ACS, SQL Scripts, VS Code, Cypress ou Selenium, PEX, iDoctor.

Tests fonctionnels

Garantissez la qualité de toutes les nouvelles versions de vos applications et accélérez le TTV et TTM.

Tests de charge de travail

Garantissez l’évolutivité de l’utilisation des applications grâce à des tests en parallèles différenciés.

Tests de sécurité

Assurer une protection effective des objets ou des données contre l’accès par des utilisateurs non autorisés. Intègre la fonctionnalité RCAC et les autorisations systèmes.

Tests de régression & workload, déploiement et contrôle

Les tests peuvent être planifiés automatiquement, en séquence ou en parallèle, avec un login identique ou différent

Pilotés par des commandes, les tests peuvent être lancés automatiquement avec différentes options, via d’autres commandes ou via des scripts de manière modulaire. L’état des tests est enregistré, y compris les piles d’appels (call stack). En cas d’échec, la configuration de contrôle peut laisser le job ouvert ou y mettre fin (et passer ou pas à un test suivant), en enregistrant tous les messages pertinents et les métadonnées contextuelles. Changer de login pour tester l’accès des différentes autorités utilisateur peut être véritablement entrepris. (ReplicTest préserve intégralement la propriété et les autorités de tous les objets en mode replay).

Expérience utilisateur, IPC (Indicateur de performance clé) et amélioration

L’expérience utilisateur a été valorisée, avec par exemple la possibilité de corriger les enregistrements déjà effectués. Imaginez que vous avez enregistré un scénario de test impliquant 30 écrans et que vous réalisez que vous avez saisi des données erronées sur l’écran 25, l’outil offre la possibilité de les corriger sans avoir à refaire tout l’enregistrement. De même pour les services web et l’integration des messages body. Un autre exemple concerne les timestamps qui peuvent être automatiquement contourné pour les comparaisons de replay de tests ou comme dans le cas de la couverture de code qui peut être récupérée dynamiquement via une UDF SQL et également dans un flux de travail automatisé pour les tests.

Les tâches peuvent être réparties entre l’utilisateur final et le programmeur.
Un utilisateur final non programmeur peut facilement enregistrer un scénario de test, puis un programmeur peut l’intégrer et le déployer.

Les rapports peuvent intégrer de nombreuses informations, depuis les tendances de l’état des tests jusqu’au log des messages avec indication de ligne de code impliquées, du pourcentage de couverture de code au temps gagné. Toutes les informations sont disponibles dans une base de données complète à partir de laquelle vous pouvez personnaliser les rapports des tests.

Enfin, nous pouvons également obscurcir les set de données et présenter les résultats dans un dashboard.

“Often, people ask what a realistic metric to measure design impact could be, and I’m convinced that metric is “time to value.” If your design influence isn’t decreasing overall time to value, you’re doing something wrong.”

Juan J. Ramirez
Product Design Lead @Netflix
Webinar - 30 jan, 2023

Activez et automatisez vos tests
Regardez le webinaire pour découvrir toutes les fonctionnalités clés d'une solution de test automatisée moderne pour vos applications IBM i

Intégrez les IPC, les mesures et les tendances dans votre cycle de développement du logiciel

Étude de cas

L’outil permet une gouvernance de test de haute précision en corrélation avec l’analyse d’impact des lignes de code à modifier pour des projets spécifiques comme, par exemple Field Resize. Il est également totalement intégrable à notre Solution DevOps.

Couverture de code renforcée

Métadonnées de couverture du code et fusion de la couverture du code (générées directement dans IFS et DB, pas de dépendance RDi)

Créer des variantes de test avec les mêmes données initiales

Pour obtenir une forte couverture, vous devrez souvent exécuter le même test avec différentes entrées. L'outil intègre une fonctionnalité permettant de démarrer un test avec les mêmes données initiales et vous redonne le contrôle pour continuer avec différentes entrées et créer des variations.

Convivial et efficace

Un utilisateur final (même non programmeur) peut utiliser ReplicTest pour enregistrer le scénario de test et un programmeur peut faire le déployement. Une commande unique pour enregistrer et rejouer vos scénarios de test.

Intégration IDE ou DevOps

L'outil peut être intégré à n’importe quelle structure IDE ou DevOps. Piloté par des commandes et interrogeable sur base de données. Les scripts ReplicTest peuvent également être intégrés à VS Code ou aux scripts SQL.

Reviews

"L'innovation de ReplicTest est remarquable car elle supprime ce qui constituait un obstacle à la réalisation des tests pour de nombreuses entreprises utilisant l'IBM i. Pour la qualité du code, la cohérence des données et un gain de temps significatif.“
Birgitta Hauser
IBM i Champion
"Outre les tests de régression automatisés traditionnels utilisant la fonctionnalité de script SQL de ReplicTest pour appeler des processus d'application, nous utilisons également ReplicTest dans notre projet de refactoring. Le refactoring est avant tout une question de tests: apporter des petits changements, effectuer des tests, faire des modifications supplémentaires, encore des tests, etc... En utilisant les métadonnées fournies par ReplicTest, les développeurs peuvent facilement comparer la situation avant et après. Tous les accès à la base de données sont enregistrés, y compris la pile d'appels lors de ces accès. En analysant les données fournies, nous sommes en mesure de retracer toute surcharge du processus. « Pourquoi interrogeons-nous cette table ? ». Grâce à la fonctionnalité de Code-Coverage, nous avons pu supprimer le code obsolète et rendre notre application beaucoup plus rapide.

Au sujet de notre produit: EasyOrder de ECI est une solution Web, sur IBM i, de commerce électronique et de gestion des commandes qui est utilisée dans une variété d'industries. Elle couvre l'ensemble de la chaîne d'approvisionnement et la solution implique une variété de systèmes d'approvisionnement électroniques jusqu'aux systèmes d'achat avec de nombreuses personnalisations.“
Rick Bovet
Development manager at ECI Software Solutions

CONTACT US

Get in Touch!

    Your request

    FAQ

    Les tests de régression (rarement, les tests de non-régression) consistent à réexécuter des tests fonctionnels et non fonctionnels pour garantir que les logiciels précédemment développés et testés fonctionnent toujours comme prévu après une modification. Sinon, cela s’appellerait une régression.

    Les tests de bout en bout sont une méthodologie de test logiciel qui vérifie le comportement et les fonctionnalités d’une application ou d’un système entier du début à la fin. Il se concentre sur le test du flux de données et des processus à travers divers composants, sous-systèmes et interfaces, garantissant que le système fonctionne comme prévu et répond aux exigences souhaitées. Lors des tests de bout en bout, le système est testé dans son ensemble, simulant des scénarios réels et des interactions utilisateur pour valider sa fonctionnalité, ses performances et sa fiabilité. Cela implique de tester plusieurs modules ou composants interconnectés pour garantir une intégration transparente et le bon fonctionnement du système complet.

    Les écrans 5250 traditionnels sont basés sur du texte et manquent d’éléments d’interface utilisateur bien définis. Cela peut rendre difficile l’automatisation du processus de test à l’aide d’outils d’automatisation d’interface utilisateur conventionnels basés sur les pixels d’image. Interagir avec les écrans 5250 nécessite souvent d’émuler une entrée de terminal et de capturer une sortie textuelle, qui est automatiquement fournie avec notre outil ReplicTest.

    Dans un processus de développement, le test représente au moins 20% du budget et peut aller jusqu’à plus de la moitié du budget établi dans certains cas.

    Quant au retour sur investissement (ROI) des tests, il peut être conséquent dans un projet de transformation digitale. Bien que le retour sur investissement exact varie en fonction du projet et de l’organisation, voici plusieurs façons dont les tests peuvent contribuer au retour sur investissement :

    Identification précoce des problèmes et réduction des coûts : les tests permettent d’identifier les défauts, les bogues ou les lacunes fonctionnelles dès le début du processus de développement. En détectant et en résolvant les problèmes dès le début, les organisations peuvent éviter des retouches coûteuses, minimiser l’impact sur les processus en aval et réduire les coûts globaux du projet.

    Expérience client améliorée : les projets de transformation numérique visent souvent à améliorer l’expérience client. Grâce à des tests approfondis, les organisations peuvent garantir que les systèmes, applications ou interfaces transformés offrent une expérience transparente et conviviale. Cela peut entraîner une satisfaction et une fidélité accrues des clients et une génération de revenus potentiellement plus élevée.

    Réduction des temps d’arrêt et des interruptions de l’activité : des tests efficaces minimisent le risque de pannes, de temps d’arrêt ou de perturbations du système pendant la transformation ou après la mise en service. En identifiant et en traitant les problèmes potentiels à l’avance, les organisations peuvent éviter les interruptions d’activité, maintenir la continuité opérationnelle et prévenir les pertes de revenus.

    Performances et évolutivité améliorées du système : les activités de tests de performances et de tests de charge aident à identifier et à résoudre les goulots d’étranglement en matière de performances, les problèmes d’évolutivité ou les limitations potentielles du système transformé. S’assurer que le système peut gérer des charges de travail accrues ou des demandes des utilisateurs améliore les performances globales du système, la satisfaction des utilisateurs et la capacité de l’organisation à gérer la croissance.

    Conformité et atténuation des risques : les projets de transformation numérique impliquent souvent le respect des réglementations du secteur, des normes de sécurité et des exigences en matière de confidentialité des données. Des tests efficaces garantissent que le système transformé répond à ces besoins de conformité, minimisant ainsi le risque de sanctions réglementaires, d’atteinte à la réputation ou de problèmes juridiques.

    Efficacité et productivité accrues : des tests approfondis permettent d’identifier les domaines nécessitant une amélioration des processus, des opportunités d’automatisation ou des améliorations de la convivialité. En rationalisant les flux de travail, en éliminant les tâches manuelles et en améliorant l’efficacité du système, les organisations peuvent réaliser des gains de productivité, des économies de coûts et une meilleure satisfaction des employés.

    Coûts de maintenance et de support réduits : des tests appropriés permettent d’identifier et de corriger les problèmes avant que le système n’entre en production. Cela peut entraîner une diminution des coûts de support post-production et de maintenance, car moins de défauts ou de problèmes surviennent, ce qui se traduit par une meilleure stabilité du système et une réduction des efforts de support continu.

    Il est important de noter que le retour sur investissement des tests dans un projet de transformation numérique est influencé par divers facteurs, tels que l’échelle du projet, sa complexité, le secteur d’activité et l’efficacité des processus de test mis en œuvre. Les organisations doivent prendre en compte ces facteurs lors de la planification et de l’allocation des ressources pour les tests, dans le but de maximiser le retour sur investissement et d’assurer le succès du projet de transformation.

    Polverini&Partners © 2024. P.IVA: IT02675510982 – All Rights Reserved