我是单元测试的初学者。请帮我
我有类UserData UserData.cs
public partial class UserData
{
/// <summary>
/// return all not locked users
/// </summary>
/// <returns></returns>
public static List<UserData> GetAllNotLockedUsers()
{
using (var db = new VostokPortalEntities())
{
var result = db.UserData.Where(i => !i.IsLocked).ToList();
return result;
}
throw new Exception("cannot get users");
}
}
我有控制器动作
[HttpGet]
public ActionResult Index()
{
//get all user list
var users = UserData.GetAllNotLockedUsers();
return View(users);
}
我有测试方法
[TestMethod]
public void UserPageUnAuth()
{
var fakedHttpContext = TestCore.FakeHttpContext();
var homeController = new HomeController(fakedHttpContext);
var indexResult = homeController.Index() as ViewResult;
Assert.IsNotNull(indexResult);
}
我想使用 Mock 进行测试。我应该怎么办?我应该用存储库模式重写类吗?这是必要的吗?我应该重写控制器逻辑吗?我应该向 EF 自动生成的类添加一些代码 Internet 上是否有关于初学者单元测试的文章?有没有简单的方法来模拟 EF?