MSTest и NHibernate - PullRequest
       48

MSTest и NHibernate

7 голосов
/ 21 августа 2008

Есть ли у кого-нибудь опыт заставить MSTest правильно скопировать hibernate.cfg.xml в выходной каталог? Все мои MSTests завершаются с ошибкой не удается найти hibernate.cfg.xml (у меня установлено всегда Копировать), но мои тесты MBUnit проходят.

Ответы [ 5 ]

12 голосов
/ 21 августа 2008

Вы можете попробовать добавить атрибут DeploymentItemAttribute в один из ваших тестов или отредактировать файл .testrunconfig и добавить его в список развертывания.

4 голосов
/ 11 ноября 2008

Отредактируйте localtestrun.testrunconfig (в папке элементов вашего решения). Выберите параметр развертывания и добавьте файл hibernate.cfg.xml в список дополнительных файлов для развертывания. Затем файл должен быть скопирован в выходной каталог, в котором выполняется тест.

2 голосов
/ 07 октября 2008

Несколько недель назад столкнулся с тем же самым - на самом деле это ошибка с MSTest - я считаю, что это было исправлено в недавнем выпуске пакета обновления (хотя еще говорит "Актив"). Если нет, все, что мне нужно было сделать, - это напрямую сослаться на мой hibernate.cfg.xml (небрежно, но работает для тестирования - это ссылка на файл hibernate.cfg.xml в моем тестовом проекте из папки «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();
            }
1 голос
/ 07 октября 2008

Мне нравится отмечать мои файлы конфигурации NHibernate как встроенные ресурсы и использовать перегрузку Configuration.Configure (), которая считывает файлы конфигурации из ресурсов сборки.

1 голос
/ 07 октября 2008

обходной путь, а не ответ: NHibernate поддерживает программная конфигурация . так что вы можете написать свой собственный файл свойств / конфигурации и проанализировать его в конфигурации гибернации при запуске.

...