Comment l'unité de méthodes de test que de créer et de lire des fichiers
J'ai mis en place deux statique void
des méthodes de création de fichiers et de lire des fichiers.
Et je veux tester les méthodes, mais je ne sais pas comment faire pour tester des méthodes de travail avec des fichiers.
Quelle est la meilleure façon de le faire?
Je suis en utilisant Java et JUnit.
double possible de Comment puis-je l'unité-test de l'enregistrement du fichier sur le disque? un Autre Test d'Unité e/S de Fichier Méthodes
C'est 2 questions étroitement liées. Pour le witing cas, voir stackoverflow.com/questions/3381801/...
C'est 2 questions étroitement liées. Pour le witing cas, voir stackoverflow.com/questions/3381801/...
OriginalL'auteur djihad | 2011-05-20
Vous devez vous connecter pour publier un commentaire.
Le mieux serait de revoir vos méthodes de travail avec entrée/sortie flux plutôt qu'avec des fichiers directement. De cette façon, vous pouvez facilement passer StringReaders/Écrivains à dans les tests unitaires (à condition de travailler avec des fichiers texte - si non, vous devez le type de cours d'eau).
Si vous travaillez directement avec les fichiers, vos tests unitaires deviennent plus compliquées, comme un besoin de réglage/démontage de code pour créer et nettoyer le répertoire de test, en plus de lire/écrire des fichiers dans chaque test, ce qui ralentit les tests vers le bas. Aussi, il ouvre la possibilité à des problèmes tels que n'ayant pas le droit d'écrire dans un répertoire spécifique (par exemple parce qu'il a été créé dans l'exécution d'un test est lancé par un autre développeur), erreur de disque plein etc. Il est préférable de garder vos tests d'unité autonome autant que possible.
OriginalL'auteur Péter Török
vous pouvez créer un test/resources répertoire avec des fichiers de test spécifique. L'inconvénient de ceci est que votre code doit être en mesure d'avoir le chemin passé en, qui ne devrait pas être trop d'un obstacle, même le code n'est pas conçu de cette façon maintenant.
donc, dans votre test, vous auriez quelque chose comme
une chose à garder à l'esprit est que si vous utiliser des chemins absolus différents développeurs peuvent avoir différents chemins d'accès aux ressources, de sorte que vous pourriez avoir besoin d'utiliser des fichiers de configuration...
OriginalL'auteur hvgotcodes