2009-09-28 141 views
0

我最近花了很多時間拔出存儲過程的後端,並用NHiberante基本庫替換它。每個存儲庫一次測試在存儲過程版本中是很好的,因爲我可以驗證存儲過程是否正常工作,而將返回的數據映射到我的對象的類沒有工作。爲NHibernate編寫集成測試集成測試的任何一點?

但是,當我把它和NHibernate一起運行後,我想我自己「這真的需要嗎?」。畢竟,NHibernate的所有單元測試,以確保會話知道如何做髒跟蹤/繪圖工作/ etc

我在這裏丟失的東西,或者我應該折騰這些測試提供沒有實際價值?

(存儲庫的這種集成測試期間我將行使樣品)

public class UserRepository : NHibernateRepository<User>, IUserRepository 
{ 
    public UserRepository() : base() 
    { 
    } 

    public void DeleteUser(User User) 
    { 
     base.Delete(User); 
    } 

    public User GetUserById(int id) 
    { 
     return base.Retrieve(id); 
    } 

    public IQueryable<User> GetUserCollection() 
    { 
     return base.RetrieveAll(); 
    } 

    public void SaveUser(User User) 
    { 
     base.Save(User); 
    } 
} 

回答

3

至少,你應該知道你的映射工作。這可以通過創建一些簡單的測試來刪除和保存。

2

您還應該爲映射添加一些'Ghost Buster'樣式測試。