Avec l’avènement de DevOps, les tests jouent un rôle plus important dans le développement de logiciels de services financiers, mais beaucoup le considèrent toujours comme un goulot d’étranglement ennuyeux. Dans ce cadre, le plus gros goulot d’étranglement est la localisation des données de test de qualité (les informations par rapport auxquelles effectuer un test).
Rechercher ou attendre que quelqu’un génère ces informations est un gros problème pour les testeurs, il peut donc être très tentant de faire des compromis sur ces processus, ce qui entraîne des problèmes en bout de ligne. Heureusement, comme tant d’autres aspects du développement logiciel, les données de test ont également évolué.
Le masquage et les sous-ensembles peuvent aider
Ce processus fonctionne en prenant un sous-ensemble (en d’autres termes, juste une partie) d’une base de données de production, puis en masquant les données (noms complets, détails de carte de crédit…), les rendant méconnaissables à des fins de confidentialité et de conformité.
Voici les essentiels à savoir sur le développement logiciel :
Les avantages du masquage et des sous-ensembles sont que les testeurs reçoivent suffisamment d’informations, et bien sûr, il s’agit de données réelles et précises. L’inconvénient du masquage et des sous-ensembles de données est qu’il peut être difficile de préserver l’intégrité référentielle, ce qui peut entraîner des failles de sécurité et des données incorrectes.
Les tests synthétiques ajoutent de la vitesse, de la précision et de la conformité
Une autre technique de plus en plus populaire lors des tests de logiciels financiers consiste à créer des données artificielles ou synthétiques, ce qui signifie que les données sont construites à partir de zéro sans aucune donnée de production. La synthèse contourne les problèmes de conformité, et l’avantage des informations synthétiques est qu’elles peuvent être générées relativement rapidement.
De plus, une fois qu’il a été créé, il peut être utilisé encore et encore dans différents scénarios de test. La génération de données synthétiques est particulièrement utile dans les petites équipes, les opérations Agile et DevOps, car elle ne retarde pas un sprint ou d’autres exigences de rotation rapide. De plus, les données synthétiques générées via des outils basés sur le cloud peuvent être augmentées et réduites selon les besoins.
Les développeurs peuvent tous utiliser les données de test
Traditionnellement, les tests étaient confiés à des professionnels dévoués. Cependant, cela a changé rapidement au cours des dernières années, avec davantage de tests effectués plus tôt dans le processus de développement et impliquant davantage de développeurs, même ceux qui n’ont aucune expérience en matière de tests.
Cela est devenu une nécessité en raison de l’ampleur et de la complexité des logiciels financiers. Un certain nombre d’outils de test sont basés sur le cloud, ce qui signifie qu’ils sont plus facilement accessibles à un large éventail d’utilisateurs.
Les données de test peuvent être utilisées pour de nombreux domaines
Classiquement, les données de test sont principalement utilisées pour les tests fonctionnels, de performance et de régression, mais elles peuvent également être utilisées pour des services fictifs, également appelés services virtuels. Un service fictif imite une demande/réponse d’un service réel, comme la vérification d’une séquence de connexion avec un serveur principal. L’exécution de cette tâche par rapport au service réel pourrait créer un retard en raison de l’indisponibilité du serveur et des coûts d’accès associés.
De toute évidence, un service fictif n’est qu’une simulation, mais il permet aux développeurs et aux testeurs de continuer à avancer lorsque le service réel n’est pas disponible. Si le service fictif peut utiliser des données de test dynamiques, cette simulation peut devenir beaucoup plus précise et prendre en charge une variété de demandes et de réponses potentielles.