Question

Quelqu'un a-t-il déjà réussi à faire en sorte que MSTest copie correctement hibernate.cfg.xml dans le répertoire de sortie ?Tous mes tests MSTest échouent avec une erreur impossible à trouver hibernate.cfg.xml (je l'ai défini sur Copier toujours), mais mes tests MBUnit réussissent.

Était-ce utile?

La solution

Vous pouvez essayer d'ajouter le DeploymentItemAttribute à l'un de vos tests, ou modifier votre fichier .testrunconfig et ajouter le fichier à la liste de déploiement.

Autres conseils

Modifiez localtestrun.testrunconfig (dans le dossier des éléments de votre solution).Sélectionnez l'option de déploiement et ajoutez le fichier hibernate.cfg.xml à la liste des fichiers supplémentaires à déployer.Le fichier doit ensuite être copié dans le répertoire de sortie où le test est exécuté.

J'ai rencontré la même chose il y a quelques semaines -- c'est en fait un bug avec MSTest -- Je crois que cela a été corrigé avec le récent Version du Service Pack (même s'il est toujours indiqué "Actif").Sinon, tout ce que j'avais à faire était de référencer directement mon hibernate.cfg.xml (bâclé mais fonctionne pour les tests - cela fait référence au fichier hibernate.cfg.xml dans mon projet de tests à partir du dossier "TestResults") :

 try
           {
                sessionFactory = new Configuration()
                    .Configure()
                    .BuildSessionFactory();
            }
            // Assume we are in "MSTest mode"
            catch (Exception)
            {
                sessionFactory = new Configuration()
                    .Configure(@"..\..\..\Program.Tests\" + @"\hibernate.cfg.xml")
                    .BuildSessionFactory();
            }

une solution de contournement plutôt qu'une réponse:NHibernate prend en charge configuration programmatique.afin que vous puissiez écrire votre propre fichier de propriétés/configuration natif et l'analyser dans les configurations de mise en veille prolongée au démarrage.

J'aime marquer mes fichiers de configuration NHibernate comme ressources intégrées et utiliser la surcharge Configuration.Configure() qui lit les fichiers de configuration à partir des ressources d'assemblage.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top