2010-06-10 7 views
5

Nous sommes confrontés à un problème de gestion des données de test (xml qui est utilisé pour créer des objets fictifs). Les données dont nous disposons actuellement ont évolué sur une longue période. Chaque fois que nous ajoutons une nouvelle fonctionnalité ou un nouveau cas de test, nous ajoutons de nouvelles données pour tester cette fonctionnalité. Maintenant, le problème est lorsque les besoins métier changent le format (comme la longueur ou le format d'une variable) ou tout changement que les données de test ne supportent pas, nous devons changer la totalité des données de test. Quelqu'un pourrait-il suggérer une meilleure méthode ou processus pour surmonter ce problème? Toute suggestion serait appréciée.Gestion des données de test pour les tests Junit

Répondre

7

Personnellement, je resterais loin de créer des données pour des cas de test n'importe où ailleurs dans les cas de test. Au lieu de créer des données de test, créez des générateurs de données qui permettent la génération rapide d'objets dans chaque cas de test ou dans chaque bloc avant.

Cela a deux avantages principaux:

  1. Il fait des tests beaucoup plus facile à lire que le développeur peut voir exactement quels objets sont utilisés, et
  2. Il devrait grandement réduire la quantité d'essai les données que vous devez gérer.

Conservez les données de test pour des choses comme les tests fonctionnels et d'intégration et utilisez un outil comme DBDeploy pour gérer ces données. Ces données doivent être conservées intentionnellement petites. L'utilisation de DBDeploy et de DBUnit permet de nettoyer la base de données avant chaque test ou suite de tests. Cela devrait également limiter la quantité de données dont vous avez besoin, car cela augmente considérablement la réutilisation des données.

+0

Merci Chris. C'était un bon aperçu. – nobody

3

Bien que ce n'est pas une solution complète à votre problème, mais serait certainement aider (en particulier dans votre cas puisque vous avez 100s de Mo de données) - Rédiger des tests basés sur vérification du comportement au lieu de vérification des données .

Martin Fowler a un très bon article here

+0

Merci Mihir. Trouvé l'article utile. – nobody

Questions connexes