2010-02-11 7 views
1

Je veux lancer un développement piloté par les tests avec ASP.Net 3.5 (C#), NHibernate avec Oracle et NUnit. Est-ce que n'importe quel corps peut me renvoyer n'importe quel tutoriel au sujet de NHibernate avec NUnit pour commencer. Toute référence de livre sera également appréciée.TDD avec NHibernate

N.B. J'ai vu l'été de la série vidéo Nhibernate, mais cela fonctionne pour SQL Server seulement pas Oracle.

Merci à l'avance

+1

Etes-vous en train d'essayer Nhibernate ou la base de données? Pourquoi l'auriez-vous dans vos tests unitaires? –

+0

Je veux utiliser NHibernate avec la base de données et tester la transaction de données en utilisant NHibernate. – TDD

+0

Ne voudriez-vous pas simuler la base de données au lieu de vous en remettre à vos tests? Cela vous permettra de vous assurer que des appels spécifiques sont faits. –

Répondre

1

This tutorial pourraient utiliser un petit peu de l'édition, mais il est très bon et il est exactement ce que vous cherchez: un tutoriel NHibernate étape par étape à l'aide des méthodes de test axée sur le développement.

+0

Mais j'ai toujours des problèmes avec oracle :( – TDD

0

Pour faire TDD avec NHibernate, il peut être utile de mettre en place la base de données vous dans des scénarios spécifiques. Une technique que j'ai utilisée est using an In-Memory SQLite database. Une nouvelle base de données étant créée pour chaque test, vous n'avez pas à vous soucier des résultats incohérents de l'exécution de tests plusieurs fois qu'une base de données persistante peut provoquer. De plus, le code de test est redistribuable sans que quelqu'un d'autre ait besoin d'exécuter une instance d'Oracle, SQL Server, etc.

D'un autre côté, les tests d'intégration avec la base de données actuelle sont importants car le comportement peut différer légèrement, même avec un bon ORM comme NHibernate.

+0

Je suis également en train de tester avec SQLite en mémoire, et je suis également dans un environnement Oracle.Comme statenjasen dit, les deux diffèrent, donc il ne remplace pas complètement les tests d'intégration (vous ne peut pas utiliser plusieurs requêtes avec Oracle par exemple). –