2012-05-26 62 views
0

我正在使用RavenDB(真棒產品的方式)的項目,並試圖咬住子彈,實際上有我的代碼從一開始就單元和集成測試。我的第一組測試只是基本的完整性測試,以查看我的代碼是否可以真正連接到數據庫,因爲我想了解我的連接代碼和測試環境是否實際配置正確。我試着做一組這樣的測試,以防萬一事情真的發生了,那樣我就可以確定我是否在低級別做了一些愚蠢的事情。使ravendb單元測試失敗

我創建一個DocumentStore,然後初始化一個會話。顯然,即使數據庫本身不存在於服務器上,到目前爲止,該過程中的代碼仍然可以正常工作。我怎麼能真正測試,我可以連接到這個東西的工作數據庫?我是否應該僞造一個文檔並嘗試將其推入該文檔中,還是錯過了一種更簡單的方法來執行此操作?

回答

1

Will, 我不確定我明白你的意思。你想知道你可能會因試圖訪問一個不存在的數據庫而失敗嗎? 在這種情況下,這是一些會拋出:

using(var store = new DocumentStore{Url = "http://localhost:8080"}.Initialize()) 
using(var session = store.OpenSession("Database-Name-That-Does-Not-Exist")) 
{ 
    session.Load<object>("some-doc-id"); 

} 
+0

我結束了剛剛打開一個會話,然後試圖獲得數據庫的統計數據。當數據庫不存在時拋出,並且在它發生時順利進行。基本上,我正在嘗試創建一套測試來幫助我在稍後解決問題的時候進行故障診斷(例如,當我移動到另一臺機器並且沒有數據庫時)。這只是爲了減少我花時間拉我的頭髮試圖弄清楚我搞砸了什麼。 雖然我想指出一點,那就是我對進出東西的測試很簡單,也很輕鬆。一切工作都很好。 –