2011-10-16 31 views
1

首先抱歉,如果問題不是很清楚。 我正在學習從summerofnhibernate.com的nHibernate,在第一章當我運行一個測試項目時,我得到以下錯誤:測試方法TestProject1.NHibernateDataProviderTestTest.CanGetCustomerByIdTest拋出異常:NHibernate.HibernateException:解析配置問題:System.IO.DirectoryNotFoundException:無法找到'C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ PublicAssemblies; PrivateAssemblies \ hibernate.cfg.xml'路徑的一部分。如何使用文件LocalTestRun.testrunco​​nfig配置測試部署?

我搜索了這個問題,並且搜索說VS 2008路徑是錯誤的(bug),將hibernate.cfg.xml放在測試項目中並添加屬性:[TestMethod(),DeploymentItem(「hibernate。 cfg.xml「)] 完成此操作後,我仍然遇到同樣的問題。

但是當我使用Visual Studio 2010中,我得到以下錯誤: System.NullReferenceException:未設置爲一個對象的實例對象引用TestProject1.NHibernateDataProviderTestTest.CanGetCustomerByIdTest拋出異常 試驗方法。

回答

0

看起來像2個不同的問題。

對於項目中的第一個地方nhibernate.cfg.xml並在testsetup中的某個地方給出new Configuration("Path to hibernate.cfg.xml")的路徑。

第二個看起來像getmethod返回null,因爲它無法查找數據庫中給定ID的Customer。如果你使用SQLite inMemory是一個典型的驗證碼,那麼每個新的Connection都指向一個不同的數據庫 - >打開會話,使用sf.OpenSession(theOneConnection)Session.Clear()而不是創建一個新的數據庫。

希望它可以幫助

0

基本上,(取決於你的問題:如何與文件LocalTestRun.testrunco​​nfig配置測試部署)

這裏是你可以遵循的方式:

在運行配置中選擇要部署的文件或文件夾

在解決方案資源管理器的解決方案項目下,雙擊要編輯的運行配置文件。

出現名爲例如.testrunco​​nfig的對話框。 單擊部署。

在要部署的其他文件或目錄下,指定要複製的其他文件或文件夾。

要做到這一點, 單擊添加文件來選擇文件;這將打開「添加部署文件」對話框。

您還可以單擊添加目錄通過使用添加部署目錄對話框選擇文件夾。

在.testrunco​​nfig對話框中,單擊保存,然後單擊確定。

只要此運行配置文件處於活動狀態,這些部署項目就會被複制到部署文件夾。

希望這會有所幫助。