Que sont les données de test dans les tests logiciels ?
⚡ Résumé intelligent
Les données de test, dans le cadre des tests logiciels, sont les données d'entrée fournies à une application lors de l'exécution des tests. Des données bien conçues permettent de réaliser des contrôles positifs, négatifs, de performance et de sécurité ; elles doivent donc être générées, anonymisées et mises à jour tout au long du cycle de vie du produit.
En tant que testeur, vous pensez peut-être que concevoir des cas de test est déjà suffisamment complexe ; alors pourquoi s’intéresser à une tâche aussi routinière que la création de données de test ? Ce tutoriel présente les données de test, explique leur importance et propose des conseils pratiques pour les générer rapidement.
Que sont les données de test dans les tests logiciels ?
Données de test dans les tests de logiciels Les données de test sont les entrées fournies à un programme logiciel lors de l'exécution des tests. Elles représentent les données qui affectent le logiciel ou sont affectées par lui pendant les tests. Ces données sont utilisées lors des tests positifs (pour vérifier que les fonctions produisent les résultats attendus pour des entrées données) et lors des tests négatifs (pour vérifier comment le logiciel gère les entrées inhabituelles, exceptionnelles ou invalides).
Des données de test mal conçues ne couvrent pas tous les scénarios possibles, ce qui nuit directement à la qualité du logiciel.
Qu’est-ce que la génération de données de test et pourquoi faut-il créer des données de test avant l’exécution des tests ?
Les tests constituent un processus qui génère et utilise d'importantes quantités de données. Ces données décrivent les conditions initiales d'un test et représentent le moyen d'interaction entre le testeur et le logiciel. Elles sont donc un élément crucial de la plupart des processus de test. tests fonctionnels.
Selon votre environnement de test, vous pourriez avoir besoin de créer des des données de test à partir de zéro, ou au moins identifier un jeu de données existant approprié pour vos tests. cas de testLes données de test sont généralement créées en synchronisation avec le cas de test qu'elles prennent en charge.
Les données de test peuvent être générées de quatre manières courantes :
- Manuellement, par un testeur ou un analyste métier.
- Copie massive de données d'un environnement de production vers l'environnement de test.
- Copie en masse des données de test provenant des anciens systèmes clients.
- Outils de génération automatisée de données de test.
Des données d'exemple doivent être générées. avant L'exécution des tests commence dès maintenant, car leur création ultérieure est complexe à gérer. De nombreux environnements de test nécessitent plusieurs étapes préliminaires ou une configuration fastidieuse avant le chargement des données. Si la génération des données a lieu pendant la phase d'exécution, vous risquez de ne pas respecter les délais de test.
Les sections ci-dessous décrivent plusieurs types de tests ainsi que des suggestions concernant leurs besoins en données de test.
Données de test pour le blanc Box Tests
In Blanc Box TestsLa gestion des données de test repose sur l'examen direct du code testé. Les critères de sélection comprennent généralement :
- Couverture de la succursale : Générer des données de sorte que chaque branche du code source soit testée au moins une fois.
- Tests de cheminement : Concevoir des données permettant de tester chaque chemin au moins une fois.
- Négatif Test d'API: Utilisez des types de paramètres non valides ou des combinaisons d'arguments non valides pour appeler des méthodes internes.
Données de test pour les tests de performances
Test de performance Elle mesure la rapidité de réponse d'un système sous une charge de travail donnée. L'objectif n'est pas de détecter des bogues fonctionnels, mais d'identifier les goulots d'étranglement. L'ensemble de données d'exemple doit être très proche de réel ou en direct des données de production pour que les résultats soient significatifs.
Comment obtient-on de telles données ? La source la plus fiable est… Clients eux-mêmes. Ils peuvent soit fournir un jeu de données existant, soit décrire à quoi ressemblent les données réelles afin que vous puissiez les modéliser. Dans un tests de maintenance Dans le cadre de ce projet, vous pouvez copier les données de production vers l'environnement de test. C'est une bonne pratique. anonymiser (Brouiller) les champs sensibles — numéros de sécurité sociale, numéros de carte de crédit, coordonnées bancaires — avant toute copie.
Données de test pour les tests de sécurité
Test de sécurité vérifie qu'un système d'information protège les données contre les actes malveillants. Les ensembles de données doivent couvrir quatre piliers :
- Confidentialité : Les informations des clients sont traitées avec la plus stricte confidentialité et ne sont en aucun cas partagées avec des tiers. Si l'application utilise le protocole SSL, des données de conception attestent de la validité du chiffrement.
- Integrity: Les informations renvoyées par le système sont correctes. Construisez les données en examinant la conception, le code, les schémas de base de données et les structures de fichiers.
- Authentification: Le processus d'établissement de l'identité de l'utilisateur. Utiliser différentes combinaisons de noms d'utilisateur et de mots de passe pour vérifier que seules les personnes autorisées peuvent accéder.
- Autorisation: Les droits accordés à un utilisateur spécifique. Combinez utilisateurs, rôles et opérations pour garantir que seuls les utilisateurs disposant des privilèges suffisants peuvent effectuer une opération particulière.
Données de test pour le noir Box Tests
En noir Box Le test du code n'est pas visible pour le testeur. Les cas de test fonctionnels doivent inclure des données répondant aux critères suivants :
- Aucune donnée : Vérifier la réponse lorsqu'aucune donnée n'est soumise.
- Données valides : Vérifiez la réponse avec des données de test correctes.
- Données invalides : Vérifier la réponse avec des données de test incorrectes.
- Format de données illégal : Vérifier la réponse lorsque les données sont dans un format non pris en charge.
- Ensemble de données sur les conditions aux limites : données situées aux limites minimales, maximales et juste en dehors.
- Ensemble de données de partition d'équivalence : données représentant chaque classe d'équivalence.
- Ensemble de données de table de décision : des données qui mettent en application chaque règle d'une table de décision.
- Ensemble de données sur les transitions d'état : données qui pilotent le système à travers chaque transition d'état définie.
- Données de test de cas d'utilisation : des données alignées sur les cas d'utilisation de bout en bout.
À noter: Selon l'application testée, vous pouvez utiliser tout ou partie des catégories ci-dessus.
Outils de génération de données de test automatisés
Les outils automatisés génèrent des ensembles de données volumineux et variés plus rapidement que n'importe quel processus manuel. Deux exemples bien connus sont :
- Données de test DTM Generator — un utilitaire personnalisable qui génère des données, des tables, des vues et des procédures pour les scénarios de test de bases de données, notamment en matière de performance, d'assurance qualité, de charge et d'ergonomie.
- Datatec - un SQL Générateur de données de Banner Software qui crée des données de test réalistes dans des fichiers plats ASCII ou directement dans des systèmes SGBDR tels que Oracle, Sybase, SQL Server et Informix.
Pour une liste restreinte évaluée et à jour, voir 10 meilleures données de test Generator Outils.
Meilleures pratiques pour gérer les données de test
Des données de test fiables dépendent d'un personnel de maison discipliné.pingSuivez ces pratiques pour garantir la qualité des ensembles de données lors des différentes versions :
- Versionnez vos données : Stocker les ensembles de données dans un référentiel avec les cas de test qui les utilisent, afin que les modifications soient traçables.
- Masquer les champs sensibles : anonymiser les données personnelles, financières et de santé avant de les copier à partir de la production.
- Actualisez régulièrement : Reconstruire les ensembles de données à chaque version pour suivre l'évolution des schémas et des règles métier.
- Documenter les résultats attendus : Associez chaque ensemble de données au résultat attendu afin de faciliter le tri des échecs.
- Automatiser l'ensemencement : Utilisez des scripts ou des fixtures pour charger les données au début de chaque exécution de test, afin de garantir la reproductibilité.


