我已经写了使用资源库使用RavenDB提到在以下博客-后 (http://www.codecapers.com/post/Using-RavenDB-with-ASPNET-MVC.aspx)以下方法:IRepository如何进行单元测试?
public User GetUserById(string id)
{
var user = (from usr in _repository.All<User>() where usr.Id == id select usr).FirstOrDefault();
if (user == null)
{
throw new NullReferenceException("No user with the id (" + id + ") could be found.");
}
return user;
}
你将如何单元测试这种方法与NUnit的(也许MOQ)?
“用户”只是一个普通的类。
否:您还在测试您的方法是否会返回正确的用户。没有什么可以保证'GetUserById(“4”)'返回一个ID为“4”的用户,除非你明确地测试它。假设我只从库中返回数据,假设有10个'Users'的存储库,那么有11个可能的结果*。所以,如果你正在进行彻底的测试,还有很多东西需要测试。 – 2012-04-24 14:58:44