Comment configurer NUnit pour exécuter les tests unitaires de mon projet?
Je commence à utiliser NUnit pour écrire des cas de test en C# avec Visual Studio 2010 .NET 4.0. Je veux utiliser NUnit pour tester contre un .dll (bibliothèque de classes C# projet)'s des fonctions publiques. Comment puis-je configurer NUnit pour travailler avec mon projet?
- Dois-je ajouter de NUnit code pour le même projet de bibliothèque de classes à tester, ou devrais-je ajouter un autre projet dans la même solution pour les cas de test NUnit? Quelle est la meilleure pratique?
- Si j'ai besoin de créer un projet de test NUnit cas, dois-je en faire un projet de bibliothèque de classes ou d'un fichier exécutable? Si j'ai fait un projet de bibliothèque de classes, comment puis-je le faire fonctionner?
- Si j'ai besoin de tester contre un exécutable et pas un projet de bibliothèque de classes, des changements de processus et/ou des projets?
source d'informationauteur George2
Vous devez vous connecter pour publier un commentaire.
Re 2
Généralement, gardez vos cas de test dll] distinct de votre [la logique métier dll]. Votre logique métier dll ne doivent pas inclure toute connaissance de NUnit, pour séparer les préoccupations et simplifier le déploiement/maintenance.
Votre cas de test dll devrait inclure une référence à NUnit, et à une logique d'entreprise dll.
Vous n'avez pas besoin de partager un espace de noms. Vous pouvez exposer des membres internes de votre logique métier dll à votre cas de test dll en modifiant la logique métier dll AssemblyInfo.cs fichier à exposer internes pour le scénario de test, dll. Cela vous permet de préserver votre visibilité souhaitée dans la logique d'affaires dll.
Re 3
Vos cas de test doit aller dans une dll (c'est à dire projet de bibliothèque de classes). Vous pouvez charger directement dans NUnit de l'INTERFACE utilisateur, ou de l'utilisation NUnit de la console du coureur dans un environnement d'intégration à l'exécution de vos tests automatiquement.
Comment je le fais:
propriétés, onglet Débogage
ce point est à votre nunit.exe
nom exact de votre cas de test dll:
MyTests.dll
bouton de points de suspension et il va
pré-sélectionnez votre test de sortie dll
répertoire de la version courante
config
par défaut démarrer le projet dans le
solution; de cette façon, chaque fois que vous frappez
F5 (ou le bouton "Play"), NUnit va
arriver avec la mise à jour des tests
préchargé - très pratique et
rapide.
Bonne chance - aussi essayer le projet de Test de type avl. dans Visual Studio, il est très similaire à NUnit. Je préfère encore NUnit mais tout apprentissage, il est bon d'essayer quelques différentes options.
Ce qui concerne votre commentaire: Lorsque vous définissez NUnit.exe comme le Démarrage par défaut de l'exécutable pour le Test de Bibliothèque de Classe (celle qui contient vos Tests Unitaires), vous dites NUnit la DLL que vous souhaitez tester; après la première fois, il sera par la suite rappelez-vous le projet qui vous exécutez les tests de comparaison.
Vous voulez également vous assurer que vous avez des références dans la bibliothèque de tests Unitaires qui se réfèrent à l'autre du projet.
Encore une fois, le Tutoriel que j'ai énumérés passe au travers de tout cela.
2: Vous devez placer tous les tests NUnit dans un autre projet dans la même solution. La construction du projet s'appuie les tests, et vice versa, de sorte que vous êtes TDDing ce projet (que vous faites cela, non?) vous pouvez simplement exécuter les tests et il va construire tout ce qui est nécessaire pour ce faire.
3: la bibliothèque de la Classe. Il n'a pas besoin d'être exécutable par Windows si vous utilisez NUnit; vous avez juste besoin d'utiliser le test runner.
Je voudrais ajouter un critère distinct projet de code de test et de référence NUnit et de la bibliothèque en cours de test. Il devrait être une bibliothèque de classe, et il est exécuté par le test NUnit coureur(s), par exemple
nunit-console test_assembly.dll
- voir le la documentation.